hol lehet a gond?(view)

wildface86 képe

Adott egy tartalomtípus content taxonomy mezövel. Akarok létrehozni egy olyan szürö blokkot amely, ha kiválasztok ebböl a tartalomtipusbol egy tartalmat akkor egy blokkban megjelentit azokat a tartalmakat még, amelyek ugyanarra a termre hivatkoznak, mint az adott tartalom. Ehez készítettem egy nézetet, ami valamiért nem müködik pedig szerintem a logika ami szerint felépítettem az jó(de ez csak az én véleményem). A nézet felépítése a következő:

Filters: Terms for települések(a szótár amelyhez a látnivalók kapcsolódnak) -Is One Of: települések (ez azért van ha nem tévedek hogy csak azok a látnivalók jelenjenek meg amelyek ebbe a kategoriaba tartoznak)

Arfumentumok: Node:nid - provide default argument - node id from url- Validator(latnivalok)

Fieds: Node:title

Szerintetek miért nem müködik?

Drupal verzió: 
aboros képe

alapból az nem menti ám az adatokat klasszik taxonomy term -ként.
neked kell azt külön bekapcsolni. nézd:
http://img.skitch.com/20090714-88cj8a9cdam86uy71dmnqbrmhi.jpg

0
0

-
clear: both;

wildface86 képe

természetesen be van kapcsolva

0
0
aboros képe

hogy lássam pontosan mi van.

0
0

-
clear: both;

wildface86 képe

$view = new view;
$view->name = 'aaaa';
$view->description = '';
$view->tag = '';
$view->view_php = '';
$view->base_table = 'node';
$view->is_cacheable = FALSE;
$view->api_version = 2;
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
$handler = $view->new_display('default', 'Defaults', 'default');
$handler->override_option('relationships', array(
  'field_telepulese_value' => array(
    'label' => 'telepules term',
    'required' => 1,
    'id' => 'field_telepulese_value',
    'table' => 'node_data_field_telepulese',
    'field' => 'field_telepulese_value',
    'relationship' => 'none',
  ),
));
$handler->override_option('fields', array(
  'title' => array(
    'label' => 'Cím',
    'alter' => array(
      'alter_text' => 0,
      'text' => '',
      'make_link' => 0,
      'path' => '',
      'alt' => '',
      'prefix' => '',
      'suffix' => '',
      'help' => '',
      'trim' => 0,
      'max_length' => '',
      'word_boundary' => 1,
      'ellipsis' => 1,
      'strip_tags' => 0,
      'html' => 0,
    ),
    'link_to_node' => 1,
    'exclude' => 0,
    'id' => 'title',
    'table' => 'node',
    'field' => 'title',
    'relationship' => 'none',
  ),
));
$handler->override_option('arguments', array(
  'nid' => array(
    'default_action' => 'default',
    'style_plugin' => 'default_summary',
    'style_options' => array(),
    'wildcard' => 'all',
    'wildcard_substitution' => 'Minden',
    'title' => '',
    'default_argument_type' => 'node',
    'default_argument' => '',
    'validate_type' => 'node',
    'validate_fail' => 'not found',
    'break_phrase' => 1,
    'not' => 0,
    'id' => 'nid',
    'table' => 'node',
    'field' => 'nid',
    'validate_user_argument_type' => 'uid',
    'validate_user_roles' => array(
      '2' => 0,
    ),
    'relationship' => 'none',
    'default_options_div_prefix' => '',
    'default_argument_user' => 0,
    'default_argument_fixed' => '',
    'default_argument_php' => '',
    'validate_argument_node_type' => array(
      'latnivalok' => 'latnivalok',
      'image' => 0,
      'prog_gallery' => 0,
      'book' => 0,
      'page' => 0,
      'regiok' => 0,
      'story' => 0,
      'szallasok' => 0,
      'telepulesek' => 0,
      'terkep' => 0,
    ),
    'validate_argument_node_access' => 0,
    'validate_argument_nid_type' => 'nid',
    'validate_argument_vocabulary' => array(
      '27' => 0,
      '26' => 0,
      '28' => 0,
      '23' => 0,
      '1' => 0,
      '21' => 0,
      '8' => 0,
      '11' => 0,
      '10' => 0,
      '25' => 0,
      '32' => 0,
      '33' => 0,
      '12' => 0,
      '17' => 0,
      '18' => 0,
      '14' => 0,
      '16' => 0,
    ),
    'validate_argument_type' => 'tid',
    'validate_argument_transform' => 0,
    'validate_user_restrict_roles' => 0,
    'validate_argument_php' => '',
  ),
));
$handler->override_option('filters', array(
  'tid' => array(
    'operator' => 'or',
    'value' => array(),
    'group' => '0',
    'exposed' => FALSE,
    'expose' => array(
      'operator' => FALSE,
      'label' => '',
    ),
    'type' => 'select',
    'limit' => TRUE,
    'vid' => '23',
    'id' => 'tid',
    'table' => 'term_node',
    'field' => 'tid',
    'hierarchy' => 0,
    'relationship' => 'none',
    'reduce_duplicates' => 0,
  ),
));
$handler->override_option('access', array(
  'type' => 'none',
));
$handler->override_option('use_more', 0);
$handler = $view->new_display('block', 'Blokk', 'block_1');
$handler->override_option('items_per_page', 5);
$handler->override_option('use_more', 1);
$handler->override_option('style_plugin', 'list');
$handler->override_option('style_options', array(
  'grouping' => '',
  'type' => 'ul',
));
$handler->override_option('block_description', '');
$handler->override_option('block_caching', -1);
$handler = $view->new_display('page', 'Page', 'page_1');
$handler->override_option('items_per_page', 0);
$handler->override_option('path', 'bbbb');
$handler->override_option('menu', array(
  'type' => 'none',
  'title' => '',
  'description' => '',
  'weight' => 0,
  'name' => 'navigation',
));
$handler->override_option('tab_options', array(
  'type' => 'none',
  'title' => '',
  'description' => '',
  'weight' => 0,
));
0
0
Nagy Gusztáv képe

Ajánlom figyelmedbe a code tagot. Lent, a beviteli forma súgójánál további infót kapsz.

Most én pótoltam, hogy olvasható legyen a kódod.

0
0

Nagy Gusztáv

aboros képe

vagy te keversz valamit nagyon.

ha csak annyi a dolog, hogy egy adott termbe tartozó tartalmakat kell megjeleníteni, akkor klónozzad a taxonomy/term/% nézet és állítsd át a term argumentumot provide default, custom php code -ra, és aztán ott arg() segítségével szerezd meg a nid, node_load -al töltsd be a node, szedd ki belőle, hogy milyen termje van és add vissza az idjét.

nem tudom hogy jön ide a relationship, meg miért nid argumentumot használsz, mikor tid kell neked, te is írod, hogy 'amik még erre a termre hivatkoznak'.. nem nidre, termre. akkor az legyen az argumentum.
a filter meg szerintem felesleges is.

0
0

-
clear: both;

wildface86 képe

A viewben semmit sem tudtam elérni, ezért gondoltam megpróbálkozom máshogy megoldani. Készítettem egy saját blokkot, aztán a törzs mezőjébe benyomtam egy php kódott, de ezzel csak azt értem el hogy magát a termet megmutatja a blokkban:

if ( arg(0) == 'node' && is_numeric(arg(1)) ) {
    $node = node_load(arg(1));
    if ($node->type == 'latnivalok') {
        $terms = taxonomy_link('taxonomy terms', $node);
        print theme('links', $terms, array('class' => 'node-terms'));
     } else if (isset($node->field_telepulese[0]['nid'])) {
        return array($node->field_telepulese[0]['nid']);
    } 
else {
        return FALSE;
    }
}
0
0