Polska społeczność o zarabianiu przez internet, pracy w domu i dodatkowej pracy online Zobacz dzisiejsze dyskusje →
Zmień styl:BiałyMobilnyRetro

Wielka aktualizacja Zarabiam.comzobacz pełną listę zmian

Wątek zamknięty 

Pogrupowana lista tagów


Autor Wiadomość
Post: #1
Pogrupowana lista tagów
Sprawdź:
Witam

Wymyśliłem sobie, że na jednej z moich stron wyświetlę sobie na podstronie listę wszystkich tagów na blogu.

W tym celu stworzyłem sobie niestandardowy szablon dla stron i wrzuciłem odpowiedni kod, który wcześniej znalazłem.

Kod PHP:
<?
    $tags = get_tags();
    if ($tags) {
        ?><ul class="tags"><?
        foreach ($tags as $tag) {
            echo '<li><a href="' . get_tag_link( $tag->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $tag->name ) . '" ' . '>' . $tag->name.'</a></li>';
        }
        ?></ul><?
    }
?>

Sęk w tym, że ten kod wyświetla prostą listę tagów. A chciałbym żeby to wyglądało mniej więcej tak:

[Obrazek: screenshot-1.gif]

Czyli literka, a pod nim lista tagów na daną literkę i w nawiasie liczba wpisów z danym tagiem.

Znajdzie się dobra dusza która przerobi mi powyższy kod? :-)
Niestety jestem php odporny Tongue
Post: #2
RE: Pogrupowana lista tagów
precell
Moze to Cie jakos naprowadzi w sumie to chyba to Big Grin temat sprzed kilku lat ale raczej nic sie nie zmienilo Tongue
https://stackoverflow.com/questions/1155...-wordpress
Glosy: precell (+1)
Post: #3
RE: Pogrupowana lista tagów
Widziałem to rozwiązanie, ale go nie wypróbowałem. Dlatego, że to jest kod dla niestandardowych tagów, na szczęście modyfikacja dla standardowych tagów była dość prosta ;-)
Wystarczyło zmienić drugą linijkę, teraz wygląda to tak:
Kod PHP:
<?php $list ''
$tags get_tags();
echo 
'<ul id="portfolio-filter">'
echo
'<li><a href="#all" title="">All</a></li>';
$groups = array();
if( 
$tags && is_array$tags ) ) {
foreach( 
$tags as $tag ) {
$first_letter strtoupper$tag->name[0] );
$groups$first_letter ][] = $tag;}
if( !empty( 
$groups ) ) {
foreach( 
$groups as $letter => $tags ) {
$list .= "\n\t" '<h2>' apply_filters'the_title'$letter ) .'</h2>';
$list .= "\n\t" '<ul>';
foreach( 
$tags as $tag ) {
$lower strtolower($tag->name);
$name str_replace(' '' '$tag->name);
$naam str_replace(' ''-'$lower);
$list .= "\n\t\t" '<li><a href="#'.$naam.'">'.$name.'</a></li>';
}}}}else 
$list .= "\n\t" '<p>Sorry, but no tags were found</p>';print $list;
echo 
"</ul>";
?>
Teraz jeszcze muszę pozmieniać html w kodzie i ostylować w CSS.

Dzięki za motywację :-)

Temat można zamknąć :-)

Edyta:

Jednak kod wymagał grubszej edycji. Teraz po zmianach wygląda tak:

Kod PHP:
<?php $list ''
$tags get_tags();
echo 
'<ul id="tags">'
$groups = array();
if( 
$tags && is_array$tags ) ) {
foreach( 
$tags as $tag ) {
$first_letter strtoupper$tag->name[0] );
$groups$first_letter ][] = $tag;}
if( !empty( 
$groups ) ) {
foreach( 
$groups as $letter => $tags ) {
$list .= "\n\t" '<h2>' apply_filters'the_title'$letter ) .'</h2>';
$list .= "\n\t" '<ul>';
foreach( 
$tags as $tag ) {
$list .= "\n\t\t" '<li><a href="' get_tag_link$tag->term_id ) . '" title="' sprintf__"View all posts in %s" ), $tag->name ) . '" ' '>' $tag->name.'</a></li>';
}}}}else 
$list .= "\n\t" '<p>Sorry, but no tags were found</p>';print $list;
echo 
"</ul>";
?>

Musiałem wywalić z generowanych linków "#" i zmienić slug z liczby mnogiej na pojedynczą.
Post: #4
RE: Pogrupowana lista tagów
Aha temat można zamknąć ;-)
Majka

Ostateczny kod PHP i CSS wrzucę w poniższy temat:
https://zarabiam.com/Temat-Modyfikacja-W...zek-156576
Post: #5
Pogrupowana lista tagów
Wątek zostaje zamknięty, ponieważ moderator uznał że temat został wyczerpany bądź rozwiązany. Jeśli posiadasz nowe pytania prosimy o założenie kolejnego tematu.
Wątek zamknięty 


Podobne wątki…
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Lista Zarejestrowanych osób [Fake] Sp00n 10 5,961 19-01-2019, 23:20
Ostatni post: rachman
  Lista wordpress theme Sebqu 0 2,975 18-06-2018, 09:30
Ostatni post: Sebqu
  Plugin do dodawania wszystkich tagów. WuJeKuBa 2 3,152 23-08-2016, 07:23
Ostatni post: ar4
  Brak możliwości dodania tagów w postach Wariatek444 3 2,941 07-02-2015, 13:52
Ostatni post: Wariatek444

Skocz do: