我有一点问题。我的page.php似乎压倒了WooCommerce的购物车页面。该页面已经创建(由WooCommerce生成,短代码完整)名为Cart。
我知道我的page.php正在覆盖它,但我不知道如何阻止它。这是我的page.php页面的代码:
<?php
get_header();
if ( have_posts() ) {
//Work with us page
$workwithuspage = "work with us";
$pitch = "pitch an idea";
$cart = "cart";
if($workwithuspage == strtolower(get_the_title()))
{
//Page stuff here!
$image = wpse_get_images();
?>
</div>
<div class="hero">
<div class="container heroImage" style="background-image:url('<?php echo $image->guid;?>');">
<div class="col-md-7"></div>
<div class="col-md-5">
<div class="pageText">
Work with Us
</div>
<div class="subText">
<?php echo $image->post_content; ?>
</div>
</div>
</div>
</div>
<div class="bodyBg">
<div class="container">
<div class="col-md-6">
<div class="box-style">
<div class="box-header">
Got a comic idea and want it published?
</div>
<div class="box-text">
Tell us your desires, so we can slap it on a comic book and sell it for millions. Ya dig?
</div>
<div class="box-button-container">
<?php
$pitch = get_page_by_title('pitch an idea');
?>
<a href="<?php echo get_permalink($pitch); ?>"><div class="button large">Pitch an Idea</div></a>
</div>
</div>
</div>
<div class="col-md-6">
<div class="box-style">
<div class="box-header">
Want to work on one of our great titles?
</div>
<div class="box-text">
Tell us your desires, so we can slap it on a comic book and sell it for millions. Ya dig?
</div>
<div class="box-button-container">
<div class="button large">Find Jobs</div>
</div>
</div>
</div>
</div>
</div>
<div id="ourstandards">
<div class="coloroverlay">
<div class="container">
<div class="col-md-6">
<div class="pageHeaderText">
Our Standards
</div>
<div class="bodyTxt">
<p>
At On Target Network, we strive to promote consistency,
communication and passion in all areas of work and we expect the same of our artists.
</p>
<p>
We understand the nature of creators and seek to raise ourselves to higher and higher standards. To do that, we vet and
review series pitches with a carefully selected panel of writers and artists.
</p>
<br /><br />
<p>
Got questions? We'll be happy to help.
</p>
<div id="sendUsQ" class="secondaryBtn">
Send us your questions
</div>
</div>
</div>
<div class="col-md-6"></div>
</div>
</div>
</div>
<div class="container">
<?php
}
else if($pitch == strtolower(get_the_title()))
{
?>
</div>
<div id="pitchImg" class="hero">
<div class="container">
<div class="col-md-7"></div>
<div class="col-md-5">
<div class="pageText">
Pitch an Idea
</div>
<div class="subText">
<?php echo $image->post_content; ?>
</div>
</div>
</div>
</div>
<div class="bodyBg">
<div class="container">
<div class="col-md-12">
<div class="pageHeaderText dark">
Start your pitch here
</div>
</div>
<div class="col-md-9">
<?php
if ( isset($si_contact_form) ) {
echo $si_contact_form->si_contact_form_short_code( array( 'form' => '1' ) );
}
?>
</div>
</div>
</div>
<?php
}
}
get_footer();
?>
对于我想要自定义的页面,我有条件ifs但我担心这样做会覆盖(以某种方式)购物车页面。
答案 0 :(得分:1)
WooCommerce使用短代码添加购物车;短代码显示为页面内容的一部分。 WP使用the_content()
函数显示特定页面或帖子的内容。您已从网页模板中删除the_content()
,因此购物车无法显示。
查看您的网页模板,您已删除the_content()
并将所有内容直接内嵌到模板中,而不是从数据库中提取。这通常是一个WP站点的非典型,但我知道有时一个站点开始静态,你只是想把它变成&#39; WP。
您还使用一堆条件来显示不同的内容块,这违背了使用模板的想法。我的建议是为您的&#39;音高创建单独的页面模板。并且&#39;与我们合作&#39;页面,并使page.php
只是具有the_content()
的默认页面模板。这样您就可以使用通用模板,可以用于任何页面,包括购物车页面。
检查the codex以获取有关创建自定义页面模板的更多信息,但简而言之,您可以在文件顶部添加注释:
<?php
/*
Template Name: My Custom Page
*/
然后将文件保存在主题文件夹中。通常的做法是将其命名为page-pitch.php
,以便您轻松识别它。然后在管理区域中,只需从下拉菜单中选择模板即可将模板分配到您想要的任何页面。
将您的不同内容拆分为单独的模板有几个好处;即您不再需要使用条件来检查页面标题(从安装到安装可能有所不同),并使您更容易调试。