2017-12-02 2 views
0

Ich versuche, die Übersetzung eines Link Anker für WPML Übersetzer zu bekommen - für das Wort „Next“:Wordpress-Funktion PHP Echo innerhalb Echo?

function getPrevNext(){ 
    $pagelist = get_pages('sort_column=menu_order&sort_order=asc'); 
    $pages = array(); 
    foreach ($pagelist as $page) { 
     $pages[] += $page->ID; 
    } 

    $current = array_search(get_the_ID(), $pages); 
    $prevID = $pages[$current-1]; 
    $nextID = $pages[$current+1]; 

    echo '<div class="prev-next-page-bottom-navigation">'; 

    if (!empty($prevID)) { 
     echo '<div class="prevpage-bottom-navi">'; 
     echo '<a href="'; 
     echo get_permalink($prevID); 
     echo '"'; 
     echo 'title="'; 
     echo get_the_title($prevID); 
     echo'">Previous</a>'; 
     echo "</div>"; 
    } 
    if (!empty($nextID)) { 
     echo '<div class="nextpage-bottom-navi">'; 
     echo '<a href="'; 
     echo get_permalink($nextID); 
     echo '"'; 
     echo 'title="'; 
     echo get_the_title($nextID); 
     echo'">Next</a>'; 
     echo "</div>";  
    } 
} 

ich die folgende Zeile von echo'">Next</a>'; ändern muß sein:

<?php echo __('Next','my_wp_theme');?> 

innerhalb Echo Echo macht ein PHP-Fehler

LÖSUNG:

Ändern echo'">Next</a>'; mit echo'">'.__('Next','my_wp_theme').'</a>';

+1

Versuchen Sie, dieses echo '">' .__ ('Next', 'my_wp_theme'). ' '; – iSZ

+0

Ihre zweite Zeile sollte gut funktionieren. – Shawn

+0

@twelvell Kein Problem, Sie können nicht wirklich die Echo-Funktion in PHP verschachteln. – iSZ

Antwort

2

Sie können alles auf eine bessere Weise zu lesen und zu drucken, wie Sie wollten.

<?php if (!empty($nextID)) { ?> 
<div class="alignright"> 
    <a href="<?php echo get_permalink($nextID); ?>" title="<?php echo get_the_title($nextID); ?>"> 
     <?php _e('Next','my_wp_theme'); ?> 
    </a> 
</div> 
<?php } ?> 
+0

Danke! Ist das eine bessere Lösung als der ursprüngliche Weg? Ich wählte meine aus WP Codex – twelvell

+0

Nein Problem Sie können die gleichen Prinzipien für die 'prevID' verwenden und vergessen Sie nicht, den Container div '.prev-next-page-bottom-navigation' zu schließen – Shibi

0

Sie können dieses mit

sprintf vereinfachen
echo sprintf('<div class="alignright"><a href="%s" title="%s">%s</a></div>', get_permalink($nextID), get_the_title($nextID), __('Next','my_wp_theme')); 
+0

Danke, ich habe eine WP-Design-Funktion, mit der Sie durch untergeordnete Seiten navigieren können : Aktualisierter Beitrag – twelvell