Szám alapján rendezés

Bucimaci képe

Sziasztok. Az lenne a kérdésem hogy gogy tudnám azt megoldani hogy egy catalog-ban ne ABC szerint rendezzem hanem számok alapján, tehát a 10-est a 11-es kövesse és ne a 100-as. Például az én esetembe így van hogy Medál 10 Medál 100 és ezt Medál 10 Medál 11-re szeretném, ha megoldható. Ha úgy megoldható akkor úgy is jó hogy 10. Medál 11. Medál, szóval a számnak nem muszáj a szöveg után lenni, csak a sorrend legyen meg. Előre is köszönöm a segítséget.

Drupal verzió: 
Fórum: 
drifter képe

Ha views alapú katalógusod van, akkor két ötletem van:

1. van natural sort modul, de sajnos csak Drupal 5 / Views 1-hez. Kis programozói tapasztalattal átalakítható Views 2-re, bár igen sokat változott Views 1 óta:

http://drupal.org/project/natsort

Az általános megközelítés elég jól le van írva a README.TXT-ban.

2. Ha ez nem megy, kicsit munkaigényesebb hogy hozzáadsz még két mezőt a termékhez, az egyik a termék neve (Medál), a másik a termék száma (1,12,100 stb), és akkor előbb név szerint, utána szám szerint rendezel. Ezeket nem kell megjelenítened. Ha nem szeretnél 2x gépelni, ezekből a mezőkből "összeragaszthatod" a node címét ("Medál 100") az auto nodetitle modullal:

http://drupal.org/project/auto_nodetitle

0
0
Bucimaci képe

Hát kezdő drupalosként biztos el leszek vele egy darabig, de megpróbálom. Azt hogy vies alapú e a katalógusom azt hogy tudom kideríteni?(Az oldalt én átvettem mástól, nem én csináltam egy kész oldalt kaptam, amit kissé pofozgatnom kell, csak 0 a drupal tudásom:D)

0
0
Bucimaci képe

Megcsináltam a két új mezőt, és felraktam az auto nodetitle-t. Hogy tudom beüzemelni, hogy az a 2 legyen a title, és hogy név majd a sorszám alapján rendezzen? Nézegettem Google-ban hogy hogy kell beüzemelni, de nem nagyon találtam.:S

0
0
szantog képe

A tartalomtípus szerkesztésekor talán legfelül van egy összezárt fieldset, azon belül még egy fieldsetet lenyitva a tokeneket is látod, amiket használni tudsz.

0
0

----
Rájöttem, miért kérdezek olyan ritkán a drupal.hu-n. Amíg szedem össze az infokat a kérdéshez, mindig rájövök a megoldásra.

Bucimaci képe

Na ez is sikerült örök hálám. Már csak rendezést kéne megcsinálni. Erre is van valami modul, vagy ezt is be lehet állítani valahol, vagy sql-be kéne rendeznem?

0
0
drifter képe

Feltételezem hogy übercartot használsz. Az übercart létrehoz egy saját nézetet (view), uc_products néven. Ott tudod módosítani a rendezési feltételeket. Alapesetben ezen az útvonalon eléred:

/admin/build/views/edit/uc_products

Azt hiszem hogy ez az alap katalógus, de semmi sem akadályoz abban hogy további terméknézeteket gyárts magadnak.

0
0
Lejla képe

Nos, amit mondok, az csak egy barkács-megoldás, és lehet, hogy több meló van vele, mint más, profi megoldásokkal, de azért inkább leírom, hátha ez is megoldást jelenthet számodra:
Ha át tudod írni a Medál 10-et Medál 010-re, és az összes többi kétjegyű számot is megtoldod így, előtte egy nullával, akkor helyes lesz a sorrend.
Vigyázz, ha van ezres nagyságrendű számjegyed a listában, akkor két nulla kerüljön a 10 elé, és akkor a 100 elé is kell majd egy nulla, hogy a példánál maradjunk.

De inkább várj meg egy tapasztaltabb drupalos véleményt is, mert ez tényleg eléggé mezítlábas megoldás, és nem is szép így a számozás igazán... :-)

0
0
Bucimaci képe

Nah jóh mostmár kellően bénának vagyok nézve, és felidegesített ez az egész. Sikerült megtalálnom a nézetet(fel kellett tenni a views modult...) A sort crteriához beraktam neki hogy a szám alapján rendezzen(gondolom az nem zavar be hogy még nincs mindenhol az a szám) és az Úrnak se akarja az alapján rendezni, marad a cím szerinti rendezés. Szóval nekem már ötletem nincs hogy mit lehetne még itt ügyeskedni:S

0
0
aboros képe

és ideadod, okosabbak leszünk egy kicsit.
(senki nem néz bénának, szerintem a többiek nevében is mondhatom, nem vagyunk olyanok)

0
0

-
clear: both;

Bucimaci képe

It van az uc_products-nak a nézete, elméletileg egy szám szerint rendezve

$view = new view;
$view->name = 'uc_products';
$view->description = 'List of products.';
$view->tag = 'Ubercart';
$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('fields', array(
  'title' => array(
    'label' => 'Title',
    'link_to_node' => 1,
    'exclude' => 0,
    'id' => 'title',
    'table' => 'node',
    'field' => 'title',
    'relationship' => 'none',
  ),
  'sell_price' => array(
    'label' => 'Sell price',
    'exclude' => 0,
    'id' => 'sell_price',
    'table' => 'uc_products',
    'field' => 'sell_price',
    'relationship' => 'none',
  ),
  'buyitnowbutton' => array(
    'label' => 'Buy it now button',
    'exclude' => 0,
    'id' => 'buyitnowbutton',
    'table' => 'uc_products',
    'field' => 'buyitnowbutton',
    'relationship' => 'none',
  ),
  'field_image_cache_fid' => array(
    'label' => '',
    'link_to_node' => 1,
    'label_type' => 'widget',
    'format' => 'product_list_linked',
    'multiple' => array(
      'group' => 1,
      'multiple_number' => '1',
      'multiple_from' => '0',
      'multiple_reversed' => 0,
    ),
    'exclude' => 0,
    'id' => 'field_image_cache_fid',
    'table' => 'node_data_field_image_cache',
    'field' => 'field_image_cache_fid',
    'relationship' => 'none',
    'override' => array(
      'button' => 'Override',
    ),
  ),
));
$handler->override_option('sorts', array(
  'field_sort_value' => array(
    'id' => 'field_sort_value',
    'table' => 'node_data_field_sort',
    'field' => 'field_sort_value',
  ),
));
$handler->override_option('arguments', array(
  'field_sort_value' => array(
    'id' => 'field_sort_value',
    'table' => 'node_data_field_sort',
    'field' => 'field_sort_value',
  ),
));
$handler->override_option('filters', array(
  'status' => array(
    'operator' => '=',
    'value' => 1,
    'group' => '0',
    'exposed' => FALSE,
    'expose' => array(
      'operator' => FALSE,
      'label' => '',
    ),
    'id' => 'status',
    'table' => 'node',
    'field' => 'status',
    'relationship' => 'none',
  ),
  'is_product' => array(
    'operator' => '=',
    'value' => 1,
    'group' => '0',
    'exposed' => FALSE,
    'expose' => array(
      'operator' => FALSE,
      'label' => '',
    ),
    'id' => 'is_product',
    'table' => 'uc_products',
    'field' => 'is_product',
    'relationship' => 'none',
  ),
));
$handler->override_option('access', array(
  'type' => 'none',
  'role' => array(),
  'perm' => '',
));
$handler->override_option('cache', array(
  'type' => 'none',
));
$handler->override_option('title', 'Termékek');
$handler->override_option('use_pager', '1');
$handler->override_option('style_plugin', 'table');
$handler->override_option('style_options', array(
  'grouping' => '',
  'override' => 1,
  'sticky' => 0,
  'order' => 'asc',
  'columns' => array(
    'title' => 'title',
    'sell_price' => 'sell_price',
  ),
  'info' => array(
    'title' => array(
      'sortable' => 1,
      'separator' => '',
    ),
    'sell_price' => array(
      'sortable' => 1,
      'separator' => '',
    ),
  ),
  'default' => 'title',
));
$handler = $view->new_display('page', 'Page', 'page_1');
$handler->override_option('path', 'products');
$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,
));
$handler = $view->new_display('page', 'Oldal', 'page_2');
$handler->override_option('path', '');
$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,
));
<code>
0
0
drifter képe

Hmm, szerintem a catalog önmagában nem views alapú. Nézd meg a /products URL-t, ott van az uc_products. Azt már jól rendezi?

0
0
Bucimaci képe

Igen ez nekem is feltűnt, hogy ez a /products-ot rendezi és ott néztem, de ott se változik. Gondoltam szenvedek ezzel, mert hátha a catalogba olyan sorrendbe rakja ki a node-okat mint a products-ba van. De akkor hogyha nem views alapú akkor hogy tudom rendezni? Taxonomy-nál kell valamit kavarni?

0
0
Bucimaci képe

Megoldottam! Úgy csináltam hogy a node táblát az adatbázisban átírtam, úgy hogy kiexportáltam majd excellel átírtam(az gyorsabban átnevezte) erre a 00-s megoldásra. És mivel a megjelenítésnél a node_revision-t jeleníti meg ezért így a node alapján rendez, de a node_revision jelenik meg. Nem tudom mennyire volt szabályos, de működik:D Köszi mindenkinek a segítséget

0
0