Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    problema con script per wordpress

    Innanzitutto saluto tutti. Sono nuovo di questo forum così come sono nuovo al linguaggio php.
    Ho scaricato il template creative by nature per wordpress da questo sito http://cssmayo.com/freebies/ e non so come modificare gli script per far si che la pagina Portfolio mi mostri solo una certa quantità di item e che alla fine ci sia la possibilità di navigare avanti o indietro per le altre pagine per vedere tutti gli item che ora invece appiano tutti appunto in una sola pagina.

    Credo che gli script da modificare siano questi due portfolio.php e functions.php che ora cercherò di farvi vedere. Aiutatemi vi prego che sono settimane che vado avanti con tentativi vani e alla fine ho deciso di rivolgermi a voi che almeno ne sapete qualcosa.

    Grazie anticipatamente di cuore a chi vorrà aiutarmi.

    questa è portfolio.php
    Codice PHP:
    <?php /* Template Name: Portfolio */ ?>  <?php get_header(); ?> <div class="box">     [img]<?=_p()?>/images/empty.gif[/img]     <div class="box-t"></div>     <div class="box-c">         <div class="box-cnt one-columns">             <div class="cl"></div>             <div class="side-one welcome">                 <div class="portfolio">                     <h2>Il mio Portfolio</h2>                     <div class="cl"></div>                     <ul>                         <?php                         $projects get_pages('child_of=' $post->ID '&sort_column=menu_order&sort_order=desc');                                                  foreach($projects as $p) :                              $link get_permalink($p->ID);                              $project_url _get_field($p->ID'url');                         ?>[*]                                 <div class="cl"></div>                                 <div class="image">[url="<?=$link?>"]<?=_get_project_info('image'$p->post_content)?>[/url]</div>                                 <div class="in">                                     <h3>[url="<?=$link?>"]<?=$p->post_title?>[/url]</h3>                                     <div class="entry">                                         <?php echo apply_filters('the_content'_get_project_info('short_info'$p->post_content))?>                                     </div>                                     <p class="more">                                         [url="<?=$link?>"]<span>Approfondimento</span>[/url]                                         [url="<?=$project_url?>"]<span>link al sito</span>[/url]                                     </p>                                 </div>                                 <div class="cl"></div>                                                      <?php endforeach; ?>[/list]<div class="cl"></div>                 </div>             </div>                          <div class="cl"></div>         </div>     </div>     <div class="box-b"></div> </div>  <?php get_footer(); ?>
    mentre questa è functions.php ridotta nella parte che interessa.
    Codice PHP:
    <?php /*** Custom functions ***/   function _generate_navigation() {          $ps get_pages('sort_column=menu_order,post_title&sort_order=asc&parent=0');     $html '';     foreach($ps as $p) {         $active is_page($p->post_name) ? 'class="active"' '';         $active $p->post_name == 'blog' && !is_page() ? 'class="active"' $active;                  $html .= '[url="' get_permalink($p->ID) . '"]<span>' $p->post_title '</span>[/url]';     }     return $html;      }   function _p() {     return get_bloginfo('stylesheet_directory'); }  function _get_project_info$what$info ) {     $info explode(''$info);          if( $what == 'image' )         return $info[0];          if( $what == 'small_image' ) {         $image_formats = array('.jpg"''.png"''.gif"');         $small_image '';         foreach($image_formats as $image_format) {             if(strstr($info[0], $image_format)) {                 $small_image str_replace($image_format'-150x150' $image_format$info[0]);                 break;             }         }         return $small_image;     }          if( $what == 'short_info' )         return $info[1];          if( $what == 'long_info' )         return $info[2];              return '';      }  function _get_latest_post(){     $latest get_posts('numberposts=1&order_by=date&order=DESC');     return $latest[0]; }  function _get_latest_project$portfolio_id ) {     $latest get_pages('child_of=' $portfolio_id '&sort_column=menu_order&sort_order=desc&number=2');     return $latest[0]; }  function _list_latest_posts($num=5$offset=1) {     $posts get_posts('numberposts=' $num '&order_by=date&order=DESC&offset=' $offset);          $html '';     foreach($posts as $p) {         $date _format_date$p->post_date );         $html .= '[*][size="1"]' $date '[/size][url="'.get_permalink($p->ID).'"]'$p->post_title .'[/url]';     }

  2. #2
    Non fai prima a creare una pagina, dentro ci metti i vari item e poi metti un'interruzione di pagina?
    La sera a casa di Luca...c'è Luca

  3. #3
    Infatti quella era l'ultima opzione che ho già provato e funziona solo che volevo qualcosa che me lo facesse in automatico.
    Grazie comunque per la risposta.

  4. #4
    non ho guardato il codice delle pagine, comunque per stabilire il numero di oggetti da visualizzare per pagina puoi usare la funzione query_posts() che è ben documentata sul sito di wordpress.

    La richiami subito prima del loop nel template e stabilisci dei parametri a piacere (tra cui numero di item per pagina, ma non solo)

    I link alle pagine precedenti e successive li crei con i tag di paginazione. Se apri il template standard di wordpress dovresti strovarli alla fine del loop, ti basterà copiarli pari pari

  5. #5
    Ti ringrazio per la risposta ma questi item non son post, sono sottopagine che invece di apparire nel menu come figli appiano solo quando apri la pagina madre, la funzione di richiamo di questi item se guardi il codice lo capirai oppure per farti una idea visiva guarda il template originale o il mio sito che è www.giuseppebeghelli.it/portfolio/
    Grazie e ciao

  6. #6
    La funzione non è get_post ma get_pages ed è soiegata anche qui http://codex.wordpress.org/Function_...nce/get_pages. Però non capisco come cambiare il parametro child_of= che di defoult è 0 che significa mostra tutti gli item in una sola pagina.
    Ho provato a cambiare il parametro mettendogli dei numeri ma la pagina risulta sempre vuota.
    Anche ammettendo che riuscissi a fargli vedere che so solo gli ultimi 5 figli poi non saprei nemmeno quale comando dargli per farmi vedere gli altri figli.
    Comunque ti ringrazio per la risposta

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.