Как я могу добавить свою собственную контактную форму в WordPress - PullRequest
0 голосов
/ 11 ноября 2011

У меня есть сайт в WordPress 3, я хотел добавить форму подписки на рассылку новостей, я в замешательстве, где я могу добавить код php для работы формы, Пожалуйста, помогите

Ответы [ 2 ]

0 голосов
/ 11 ноября 2011

Я полагаю, вам понадобится плагин, чтобы разрешить php-код в custom_sidebar, как это было предложено Pigi.Вы можете просто добавить его в файл sidebar.php, но он будет отображаться во всех областях вашего сайта с включенной боковой панелью.Возможно, вы захотите сохранить код для вашей формы в отдельном файле, например:

Если бы это была форма:

<ol class="yourForm">
   <li><label for="contactName">Name</label>
    <input type="text" name="contactName" id="contactName" value="<?php 
      if(isset($_POST['contactName'])) echo $_POST['contactName'];?>" class="requiredField" />
  <?php if($nameError != '') { ?><span class="error"><?=$nameError;?></span><?php 
  } ?></li>
   <li><label for="email">Email</label>
    <input type="text" name="email" id="email" value="
    <?php if(isset($_POST['email']))  echo $_POST['email'];?>"class="requiredField email" />
    <?php if($emailError != '') { ?>
     <span class="error"><?=$emailError;?></span><?php 
  } ?></li>
   <li class="textarea"><label for="commentsText">Comments</label>
    <textarea name="comments" id="commentsText" rows="20" cols="30" class="requiredField">
    <?php if(isset($_POST['comments'])) { 
     if(function_exists('stripslashes')) { 
      echo stripslashes($_POST['comments']); 
     } else { 
      echo $_POST['comments']; 
     }
     } 
  ?></textarea>
    <?php if($commentError != '') { ?>
     <span class="error"><?=$commentError;?></span><?php 
  } ?></li>
   <li class="inline"><input type="checkbox" name="sendCopy" id="sendCopy" value="true"
    <?php if(isset($_POST['sendCopy']) && $_POST['sendCopy'] == true) 
     echo ' checked="checked"'; ?> />
    <label for="sendCopy">Send a copy of this email to yourself</label></li>
   <li class="screenReader">
    <label for="checking" class="screenReader">If you want to submit this form, do not enter anything in this field</label>
    <input type="text" name="checking" id="checking" class="screenReader" value="
    <?php if(isset($_POST['checking']))  echo $_POST['checking'];?>"/></li>
   <li class="buttons">
    <input type="hidden" name="submitted" id="submitted" value="true" />
    <button type="submit">Email me »</button></li>
</ol>

Вы бы сохранили его как form.php и загрузили его вкорневой каталог вашей темы.

Затем вы можете добавить его во все боковые панели , поместив этот фрагмент кода в файл sidebar.php:

<div id="myForm"><?php get_template_part('form'); ?></div>

Или только на определенных страницах с помощью условного оператора, подобного этому:

<?php if (is_page_template('index.php')) {
  get_template_part('form');
  } ?>
0 голосов
/ 11 ноября 2011

вы можете добавить его на боковой панели перед функцией «dynamic_sidebar».

, например:

 HERE YOUR FORM CODE    
<?php /* Widgetized sidebar */
        if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar() ) : ?><?php endif; ?>

Проверьте теги php, убедитесь, что при внедрении кода формы phpзакрытая!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...