Link direct către categorie?

31 iul. 2013, 05:23:56
Vizualizări: 28.9K
Voturi: 1

Încerc să construiesc un meniu cu link-uri către categorii specifice pe care vreau să le evidențiez și să le aplic stiluri/clase.

Am încercat ceva de genul acesta.

<li><a href="<?php get_site_url(); ?>category/Gadgets"> Gadgets</a></li>

Și

 <li><a href="category/Gadgets"> Gadgets</a></li>

Pe frontend apare ca sitename/category/category/category/gadgets.

Nu pot folosi <?php wp_list_categories('orderby=name&title_li='); ?> pentru că va afișa toate categoriile și va limita stilizarea pe care o pot face în html.

Vreau doar să creez link-uri directe către categorii, după nume, preferabil fără a include codul fix pentru numele site-ului.

0
Toate răspunsurile la întrebare 4
0

Există o funcție numită get_category_link() care ar putea fi utilă pentru tine. Aceasta poate genera un link adecvat fără a fi nevoie să-l hardcodezi, cu excepția numelui sau ID-ului categoriei.

Exemple din Wordpress Codex:

<?php
    // Obține ID-ul unei categorii date
    $category_id = get_cat_ID( 'Numele Categoriei' );

    // Obține URL-ul acestei categorii
    $category_link = get_category_link( $category_id );
?>

<!-- Afișează un link către această categorie -->
<a href="<?php echo esc_url( $category_link ); ?>" title="Numele Categoriei">Numele Categoriei</a>

http://codex.wordpress.org/Function_Reference/get_category_link

20 mar. 2014 02:51:01
0

Specific cererii tale, încearcă asta:

<li><a href="<?php echo home_url() ?>/category/Gadget-uri"> Gadget-uri</a></li>
31 iul. 2013 06:26:44
0

utilizează wp_list_categories('include=3,5,9,16');, înlocuiește "3,5,9,16" cu ID-urile categoriilor tale (separate prin virgulă)

altă metodă

get_category_link( $category_id );

vezi documentația WordPress aici

Încă o metodă este să creezi un meniu de categorii în administrare și să-l afișezi în tema ta (dacă tema suportă meniuri)

31 iul. 2013 06:37:55
0

get_site_url() returnează un șir cu URL-ul, dar nu îl afișează. Deci puteți încerca:

<?php echo get_site_url(); ?>

sau mai bine:

<?= get_site_url(); ?>
31 iul. 2013 09:02:28