用php中的页面标题替换模板页面中的单词

时间:2011-12-20 04:44:38

标签: php wordpress

我现在开始意识到一个人可以利用php的无限方式。

我创建了一个名为new-member.php的模板页面,该页面调用来自另一个页面的内容,这样当我添加一个新成员时,它就快速而简单。

我现在使用的路径是:

  1. 我添加了一个以公司名称为标题的新页面。
  2. 我选择了新的会员模板。
  3. 我点击发布。这将创建一个“即将推出的新成员”页面,该页面可在几秒钟内完成。完美!
  4. 但是我想把它带到更高的层次并且有一个php函数用页面标题(公司名称)替换“New Member”,这样当我添加新页面时,它不仅具有新成员网址,但不是说“新成员即将推出”,而是说“XYZ公司即将推出!”这是一个临时页面,直到正式建立。

    有人可以告诉我正确的代码以及放置该代码的位置吗?我正在使用wordpress。我不知道如何编写这段代码。代码是否进入新的member.php模板?标题?我不知道,但想学习!

    请帮忙!

3 个答案:

答案 0 :(得分:1)

你需要做什么(如果我在你的位置,我会把一个插件或做一些function.php黑客)捕获包含页面的输出并用什么替换你的特定标签“新成员”你需要。在下面的示例中,我将使用%NEW_MEMBER_NAME%而不是“New Member”,这使您的替换字符串更加独特,因此在您的占位符wp页面中,您将编写

“%NEW_MEMBER_NAME%comig很快”。

<?php /* Template Name: New Member */ ?>
<?php get_header(); ?>
<div id="primary">
    <div id="content" role="main">
        <?php
        the_post();
        // i don't think you need this anymore
        // get_template_part( 'content', 'page' );
        ?>
        <div class="entry-content">
            <?php if(function_exists('iinclude_page')) {
                ob_start();
                iinclude_page(112);
                $content = ob_get_clean();
                echo str_replace('%NEW_MEMBER_NAME%',the_title('','',false),$content);
            } ?>
        </div>
    </div><!-- #content -->
</div><!-- #primary -->
<?php get_footer(); ?>

请记住,对模板中的内容进行硬编码绝不是一个好的方法,因为您在这里使用“112”(占位符wp页面的ID),并且可能是替换标记%NEW_MEMBER_NAME%。 你应该分叉主题,并为这两个创建一个管理选项页面。

希望这会以某种方式使你感到高兴。

答案 1 :(得分:0)

编辑newmember.php模板文件。找到'The Loop'。这是您的帖子内容的显示位置。回答标题。

http://codex.wordpress.org/Function_Reference/the_title

//syntax
<?php the_title( $before, $after, $echo ); ?> 

//add this to your newmember.php template
<?php the_title('<h3>', '</h3>', true); ?>

如果您发布newmember.php模板文件中的内容,则可以提供更具体的答案。但这很简单,我想你可以自己解决这个问题。

答案 2 :(得分:0)

不确定如果我理解你的问题是正确的。 但这是我认为你可能要做的事情。

只需替换

New Member coming soon

<?php the_title();?> coming soon

现在您将获得页面标题而不是“新会员”。