防止在自定义页面模板中加载主题样式

时间:2015-05-29 14:34:23

标签: wordpress wordpress-plugin

我有一个主题的wordpress网站。 为了实现一些更改,我创建了一个子主题。这很好。

现在我想添加一个页面模板,允许我通过wp_enqueue_style将样式排入队列。为了实现这一点,我需要将wp_head()添加到我的页面模板中,如果我理解正确的话。

我想将这个自定义页面模板用于我正在创建的前端应用程序(插件)。 此应用程序的设计与网站的其他部分完全分开。现在,当我使用wp_head()时,我也得到了所有主题样式。我想阻止加载默认主题样式。

实现这一目标最简单的方法是什么?最好是独立于主题的解决方案。

2 个答案:

答案 0 :(得分:1)

您可以添加不同的标题。

https://codex.wordpress.org/Function_Reference/get_header

多个标题

不同页面的不同标题。

<thead>
  <th colspan="3">Checkbox Version</th>
</thead>
<tbody>
  <tr>
    <td>
      <p>Question</p>
    </td>
    <td>
      <p>Answer</p>
    </td>
    <td>
      <p>My Response</p>
    </td>
  </tr>
  <tr>
    <td>
      <p>Can you fight with your bare hands?</p>
    </td>
    <td>
      <input type="checkbox" id="strengthCheckYes" onchange="StrengthCheckbox()">YES</input>
      <input type="checkbox" id="strengthCheckNo" onchange="StrengthCheckbox()">NO</input>
    </td>
    <td>
      <input type="text" id="checkboxStrengthResponse" size="60px" disabled></input>
    </td>
  </tr>
  <tr>
    <td>
      <p>Are you able to outrun a flying car?</p>
    </td>
    <td>
      <input type="checkbox" id="speedCheckYes" onchange="SpeedCheckbox()">YES</input>
      <input type="checkbox" id="speedCheckNo" onchange="SpeedCheckbox()">NO</input>
    </td>
    <td>
      <input type="text" id="checkboxSpeedResponse" size="60px" disabled></input>
    </td>
  </tr>
  <tr>
    <td>
      <p>Can you out play a super AI in chess?</p>
    </td>
    <td>
      <input type="checkbox" id="intelligenceCheckYes" onchange="IntelligenceCheckbox()">YES</input>
      <input type="checkbox" id="intelligenceCheckNo" onchange="IntelligenceCheckbox()">NO</input>
    </td>
    <td>
      <input type="text" id="checkboxIntelligenceResponse" size="60px" disabled></input>
    </td>
  </tr>
</tbody>
</table>

答案 1 :(得分:0)

我在谷歌中做了一些挖掘,并想出了一些可以满足我想要的东西。 清除后,我可以添加自己的样式和脚本。

function clear_styles_and_scripts() {
    global $wp_scripts;
    global $wp_styles;

    foreach( $wp_scripts->queue as $handle ) :

        wp_dequeue_script( $handle );
        wp_deregister_script( $handle );

    endforeach;

    foreach( $wp_styles ->queue as $handle ) :

        wp_dequeue_style( $handle );
        wp_deregister_style( $handle );

    endforeach;

}
add_action( 'wp_enqueue_scripts', 'clear_styles_and_scripts', 100 );