modified Shop: zusätzliche Variablen anzeigen

In einem modified Webshop soll die Möglichkeit eingerichtet werden eine zusätzliche Variable für einen Kategorie einzugeben und im Frontendtemplate zu verwenden. Basis für die Vorgehensweise war dieses etwas veraltete Dokument und ein gutes Stück Hilfe von dem Forenmitglied awids.

Die hier vorgestellte Vorgehensweise müsste updatesicher sein.

Zuerst müssen wir die Datenbank darauf vorbereiten ein neues Feld in den Kategorie Definitionen zu erhalten

mysql -u root -p
use shop;
ALTER TABLE `categories`  ADD `categories_youtube` VARCHAR( 30 ) NOT NULL;

Dann brauchen wir die notwendigen Anpassungen für den Adminbereich

  1. Ein Feld in das wir die Werte eingeben könnten

    vi admin/includes/extra/modules/new_category/my-categories-youtube.php
     <table class="tableInput border0">
     <tr>
     <td><span class="main">youtubeid</span></td>
     <td><span class="main"><?php echo  xtc_draw_input_field('categories_youtube', $cInfo->categories_youtube); ?></span></td>
     </tr>
     </table>
    
  2. Die Definition das dieses Feld auch abgespeichert und wieder “ausgegraben wird “

    vi admin/includes/extra/modules/add_db_fields/my-categories-youtube.php <?php $add_categories_fields[] = ‘categories_youtube’; ?>

  3. Die Variable soll aus der Datenbank geholt werden

Jetzt müssen wir dafür sorgen das wir diese Daten auch in einem Frontendtemplate verwenden können

  vi includes/extra/define_add_select/my-categories-youtube.php
     <?php $add_select_categories[] = 'c.categories_youtube'; ?>
  1. Dieser Wert wird einer Smarty Variable zugewiesen

    vi includes/extra/modules/categories_listing/categories_smarty/my-categorie-youtube.php <?php $module_smarty->assign(‘CATEGORIES_YOUTUBE’, $category[‘categories_youtube’]); ?>

Jetzt kann man die Variable in einem product_listing verwenden und damit die gewünschten Dinge machen.

Ob es klappt kann man dann in der Datenbank nachschauen

  select categories_id,categories_youtube from categories where categories_youtube != ' ';
  +---------------+--------------------+
  | categories_id | categories_youtube |
  +---------------+--------------------+
  |           27  | XRXXXXXXvF4        |
  |           31  | EXXXXXXXmDY        |
  +---------------+--------------------+
  2 rows in set (0.00 sec)