Fugveny tartalmanak modositasa

zoliky képe

A modules/forum/forum.module fajlban talalhato a kovetkezo fugveny:

/**
 * Process variables for forums.tpl.php
 *
 * The $variables array contains the following arguments:
 * - $forums
 * - $topics
 * - $parents
 * - $tid
 * - $sortby
 * - $forum_per_page
 *
 * @see forums.tpl.php
 */
function template_preprocess_forums(&$variables) {
  global $user;
 
  $vid = variable_get('forum_nav_vocabulary', '');
  $vocabulary = taxonomy_vocabulary_load($vid);
  $title = !empty($vocabulary->name) ? $vocabulary->name : '';
 
  // Breadcrumb navigation:
  $breadcrumb[] = l(t('Home'), NULL);
  if ($variables['tid']) {
    $breadcrumb[] = l($vocabulary->name, 'forum');
  }
  if ($variables['parents']) {
    $variables['parents'] = array_reverse($variables['parents']);
    foreach ($variables['parents'] as $p) {
      if ($p->tid == $variables['tid']) {
        $title = $p->name;
      }
      else {
        $breadcrumb[] = l($p->name, 'forum/'. $p->tid);
      }
    }
  }
  drupal_set_breadcrumb($breadcrumb);
  drupal_set_title(check_plain($title));
 
  if ($variables['forums_defined'] = count($variables['forums']) || count($variables['parents'])) {
    // Format the "post new content" links listing.
    $forum_types = array();
 
    // Loop through all node types for forum vocabulary.
    foreach ($vocabulary->nodes as $type) {
      // Check if the current user has the 'create' permission for this node type.
      if (node_access('create', $type)) {
        // Fetch the "General" name of the content type;
        // Push the link with title and url to the array.
        $forum_types[$type] = array('title' => t('Post new @node_type', array('@node_type' => node_get_types('name', $type))), 'href' => "node/add/$type/$variables[tid]");
      }
    }
 
    if (empty($forum_types)) {
      // The user is logged-in; but denied access to create any new forum content type.
      if ($user->uid) {
        $forum_types['disallowed'] = array('title' => t('You are not allowed to post new content in forum.'));
      }
      // The user is not logged-in; and denied access to create any new forum content type.
      else {
        $forum_types['login'] = array('title' => t('<a href="@login">Login</a> to post new content in forum.', array('@login' => url('user/login', array('query' => drupal_get_destination())))), 'html' => TRUE);
      }
    }
    $variables['links'] = $forum_types;
 
    if (!empty($variables['forums'])) {
      $variables['forums'] = theme('forum_list', $variables['forums'], $variables['parents'], $variables['tid']);
    }
    else {
      $variables['forums'] = '';
    }
 
    if ($variables['tid'] && !in_array($variables['tid'], variable_get('forum_containers', array()))) {
      $variables['topics'] = theme('forum_topic_list', $variables['tid'], $variables['topics'], $variables['sortby'], $variables['forum_per_page']);
      drupal_add_feed(url('taxonomy/term/'. $variables['tid'] .'/0/feed'), 'RSS - '. $title);
    }
    else {
      $variables['topics'] = '';
    }
 
    // Provide separate template suggestions based on what's being output. Topic id is also accounted for.
    // Check both variables to be safe then the inverse. Forums with topic ID's take precedence.
    if ($variables['forums'] && !$variables['topics']) {
      $variables['template_files'][] = 'forums-containers';
      $variables['template_files'][] = 'forums-'. $variables['tid'];
      $variables['template_files'][] = 'forums-containers-'. $variables['tid'];
    }
    elseif (!$variables['forums'] && $variables['topics']) {
      $variables['template_files'][] = 'forums-topics';
      $variables['template_files'][] = 'forums-'. $variables['tid'];
      $variables['template_files'][] = 'forums-topics-'. $variables['tid'];
    }
    else {
      $variables['template_files'][] = 'forums-'. $variables['tid'];
    }
 
  }
  else {
    drupal_set_title(t('No forums defined'));
    $variables['links'] = array();
    $variables['forums'] = '';
    $variables['topics'] = '';
  }
}

Szeretnem par valtozonak a tartalmat modositani. Meg lehetne oldani ugy, hogy kulon fajlba csinaljam a modositasokat? Drupal 6-ot hasznalok es szeretnem megelozni a sok gondot amikor upgradelni fogok.

Koszonom!

Fórum: 
nevergone képe

Elárulod, hogy mi a probléma vele? Hátha szebben, jobban, és módosítás nélkül is megoldható.
Amúgy nem szép dolog a Drupal core -ba csak úgy "beletúrkálni", többek közt a frissítések miatt sem.

0
0
zoliky képe

Ha megfigyeled a kovetkezo oldalon http://gallery.menalto.com/forum letezik ket link: "Login to post a new topic" es "Active topics". A forum felso reszen lathatod oket.

En is szeretnek egy Active topics linket beszurni a felso reszbe. Es szeretnem a 'Login to post new content in forum' szoveget kicsit roviditeni.

Koszi!

0
0
aboros képe

a forum modulhoz van egy olyan template file is, hogy forum-topic-list.tpl.php, csodálatosan dokumentálva. (biiig rspct) ... a hivatkozott példában a két link semmi extra, egyik a tracker -hez vezet bármelyik fórumot nézed is, másik pedig a loginhoz, csak megad egy destination -t is. ezeket gyalog is beleteheted az említett forum-topic-list.tpl.php -ba, úgy, hogy átmásolod azt a sminked könyvtárába és ott módosítod kedvedre.
mivel szuperül dokumentáltak a tpl fileok, rögtön az elején ott is van, hogy ebben a fileban te használhatod a $topic_id változót, ami az aktuális topic id-je... szóval, a login to post az kb így néz ki:

 <a href='login/destination?forum='".$topic_id."' title='valami title'>login to post</a>

remélem érthető.

0
0

-
clear: both;

zoliky képe

egeszen masrol beszelsz, engemet nem erdekel a forum-topic-list fajl. A gallery oldalon tisztan lathato mit akarok. A fenti reszben szeretnem az "Aktiv topikok" linket beszurni amely tiszta drupal temanal nincs ott.

0
0
aboros képe

ami a kérdés volt. nézd meg mégegyszer. a címen, amit példaként felhoztál (http://gallery.menalto.com/forum) a fórum 'nyitólapja' van, ami bizony egy 'topic list' és mint ilyen a forum-topic-list.tpl.php szerint kerül kiírásra. abba kell beletenned a linkjeidet, azt is leírtam hogyan. ha innét továbblépsz itt van például mondjuk egy másik fórum ugyanarról az oldalról (http://gallery.menalto.com/forum/66) ezen is egy topic list van, ugyan az a sablon használatos a megjelenítéséhez... ezen is ott vannak a linkek, az 'active topics' továbbra is a core tracker -hez vezet... a másik meg a loginhez és destination -be megadja a 66 -os forum id-t.. ha még egyel beljebb mész egy konkrét topicba (pl: http://gallery.menalto.com/node/75549) ott már nem szerepelnek az említett linkek ... (az már nem is topic-list, hanem topic...)

nézd meg mégegyszer!
ehhez semmilyen függvényt nem kell módosítanod, pláne nem a core forum bármelyik függvényét is..

ha nem a fórumjaid felső részébe akarod betenni az 'active topics' linket, akkor persze nem kell a forum-topic-list -et piszkálnod, csak bekapcsolod a tracker modult, ami a core része modult és kész, létrejön a 'friss tartalom' menüpont és rakod ahova szeretnéd.

0
0

-
clear: both;

zoliky képe

Ha forum-topic-list.tpl.php fajlba modositok csak akkor latszik az eredmeny ha raklikelek egy forum kategoriara.

Koszi mindenesetre, majd irok a gallerynak es megkerdezem, hogyan csinaltak.

0
0
aboros képe

viszont van egy olyan file is, hogy forum-list.tpl.php ... az írja ki a teljes forum oldalt ahogy nézem, próbáld azt! lehet, hogy a kívánt eredményhez mindkét tpl -t át kell írni, de hogy semmilyen függvényt nem kell átírni hozzá (pláne nem olyat ami nem theme_ -el kezdődik) az tutibiztos.

0
0

-
clear: both;

crt képe

Szia.

A fenti függvényt bemásolod a template.php fájlba a smink könyvtárában és átnevezed sminkneve_preprocess_forums-ra. Itt úgy alakítod, ahogy Neked tetszik.

Üdv: Zoli

0
0
zoliky képe

Bemasoltam a template.php fajlba es atneveztem a fugvenyt de nem tortenik semmi :

function sajatsmink_preprocess_forums(&$variables) {
 
// tartalom modositva
 
}
0
0
alippai képe

Nem olvastam végig a problémát, de ez nem theme_* függvény, tehát nemhiszem hogy egyszerű lenne a felülírása :S
Keress theme_* függvényt ami ezt hívja meg, azt tudod módosítani ;)
lehet még visszanézek :P

0
0

Lippai Ádám
young element

aboros képe

szerintem se lehet ezt a fgv-t csak úgy ukk-fukk-mukk módosítgatni. legalábbis nem valami elegáns.

0
0

-
clear: both;