2012-03-21 109 views
0

我有以下簡碼。我想要做的就是將此簡碼轉換爲側欄區域,以便我可以運行體面的聯繫人窗口小部件。我搜索了一些並嘗試了一些教程,但我無法正常工作。WordPress的:短代碼

的index.php

<?php 
       $classes = ''; 
       if (strtolower($menuItem->title) == $precision_contact_page) { 
      ?> 
      <div id="<?php echo strtolower($menuItem->title); ?>scroller"> 
      <?php 
       $page_data = get_page($menuItem->page_id); 
       echo do_shortcode($page_data->post_content); 
      ?> 

的functions.php:

//contactform shortcode 
    function contactform_shortcode($atts, $content = null) { 
     extract(shortcode_atts(array(
      'class' => 'content' 
     ), $atts)); 

     $returncontent = '<div class="' . esc_attr($class) . '">'; 
     $returncontent .= '<a href="#" id="info" class="open">ContactInformation</a> 
       <h5>Get In Touch</h5><div id="contactform"> 
       <div id="response"></div> 
       <form id="precision-contact-form" method="POST" action="" class="form"> 
        <div id="main"> 
         <p class="name"> 
          <input type="text" name="uname" id="uname" /> 
          <label for="uname" class="overlabel">Name</label> 
         </p> 
         <p class="email"> 
          <input type="text" name="uemail" id="uemail" /> 
          <label for="uemail" class="overlabel">E-mail</label> 
         </p> 
         <p class="text"> 
          <textarea name="ucomments" id="ucomments" ></textarea> 
         </p> 
         <p class="submit"> 
          <button type="submit" name="submit" id="submit" class="graybutton">Send Email</button> 
         </p> 
        </div><!--end main--> 
       </form> 
      </div><!--end contact form-->'; 
     $returncontent .= '</div>'; 
     return $returncontent; 
    } 
    add_shortcode('contactform', 'contactform_shortcode'); 
?> 

回答

1

過去的這個,你在側邊欄中想要

<?php echo do_shortcode('[contactform']'); ?> 
+0

我想將特定的短代碼轉換爲側欄,因爲短代碼是「頁面」,所以我需要使「頁面」側欄準備好,以便我可以運行該小部件。 – 2012-03-21 17:57:28

0

如果你希望你的短碼來然後在側欄工作你可以做以下事情。

在functions.php中添加以下

add_filter('widget_text', 'do_shortcode'); 

這將運行所有通過* do_shortcode *功能時,您文本部件的內容。

現在,您可以在側邊欄中添加一個新的文本小部件,並在其中使用短代碼,就好像您處於帖子編輯屏幕一樣。

[contactform] 
+0

該模板沒有側邊欄我正在嘗試做的是創建[contactform]簡碼進入一個區域,使我可以將特定的小部件放置到此頁面上 – 2012-03-22 02:47:39