2012-02-21 4 views
0

Я хочу, чтобы иметь возможность POST на внешний URL, когда пользователь нажимает ссылку (пункт меню) в меню WordPress.Форма POST из WordPress Пункт меню

Я попытался добавить необходимые параметры к URL-адресу пользовательского элемента меню, но, к сожалению, внешний сайт требует, чтобы данные отправлялись через POST, а не в GET.

Неужели кто-нибудь решил эту проблему раньше или знал какие-либо плагины, которые помогли бы?

ответ

1

Вот решение, с которым я пришел.

Я добавил form в начало страницы со скрытыми полями, соответствующими данным, которые я хотел бы ПОСТ. Таким образом, в header.php прямо после открывающего элемента тела:

<form id="postform" action="..." method="post" target="_blank">     
    <input type="hidden" name="field1" value="value1" /> 
    <input type="hidden" name="field2" value="value2" /> 
    ... 
</form> 

Тогда я определил пользовательский пункт меню с URL из «#» и класс CSS из «SubmitForm».

Наконец, я добавил JavaScript в голову в header.php, чтобы отправить форму, когда связь пункт меню щелкнул:

<script type="text/javascript"> 
    jQuery.noConflict(); 
    jQuery(document).ready(function() 
    { 
    jQuery('.submitform').click(function() 
    { 
     jQuery('#postform').submit(); 
     return false; 
    }); 
    }); 
</script> 

Я думаю, в идеале идентификатор будет назначен на якорь, созданный с помощью Пользовательский пункт меню. Тем не менее, WordPress не означает, что это и фактически использование класса означало, что у меня могут быть ссылки как в меню верхнего и нижнего колонтитула с тем же классом, и, следовательно, как с отправкой формы.

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