2015-12-21 3 views
0

У меня возникла проблема на моем сайте wordpress. Адрес сайта http://www.sharedmachine.in/. На домашней странице есть опция поиска. Теперь структура permalink прямо сейчас выглядит так: http://www.sharedmachine.in/?p=123.Wordpress permalink issue - расширенный поиск

Теперь, нажав кнопку поиска, предполагается перенаправить на страницу расширенного поиска. но это не так.

Таким образом, я изменил структуру permalink на заказ - /%postname%/.

Все еще не работает.

URL, он должен перенаправлять на это

http://www.sharedmachine.in/advanced-search/?filter_search_type (некоторые фильтры)

Но вместо этого он shows-

http://www.sharedmachine.in/?filter_search_type (фильтры)

The имя страницы n от входа в URL.

Теперь код, чтобы получить URL является -

$adv_submit=wpestate_get_adv_search_link(); 

и функция -

function wpestate_get_adv_search_link(){ 
    $pages = get_pages(array(
     'meta_key' => '_wp_page_template', 
     'meta_value' => 'advanced_search_results.php' 
     )); 

    if($pages){ 
     $adv_submit = esc_url (get_permalink($pages[0]->ID)); 
    }else{ 
     $adv_submit=''; 
    } 

    return $adv_submit; 
} 

Если изменить линию

$adv_submit=wpestate_get_adv_search_link(); 

Для

$adv_submit='http://www.sharedmachine.in/index.php/advanced-search/'; 

он работает.

В чем здесь проблема?

+0

Спасибо @Try для редактирования , –

ответ

0

aparently переменная $pages никогда не заселяется. я хотел бы попробовать что-то вроде:

$page = get_page_by_path('advanced-search'); 
if ($page) { 
    $adv_submit = esc_url (get_permalink($page->ID)); 
} else { 
    // do something else 
} 

в этом случае вы будете смотреть на страницу его слизня в отличие от страницы-мета вы можете или не может быть установлен

+0

Спасибо. Это работает. –

+0

Теперь это работает с /% postname%/permalink структурой. с этой структурой некоторые мои страницы не работают. Если я изменил структуру на значение по умолчанию, какое изменение мне нужно сделать в приведенном выше коде? –

+0

вам не нужно вносить какие-либо изменения, но вам нужно проверить, что Wordpress может перезаписать файл '.htaccess', возможно, именно поэтому некоторые страницы не будут работать с этой структурой. –

Смежные вопросы