网站如何设置会员才可以浏览的内容

默认情况下,WordPress是博客工具。不过,您可以根据自己的需要进行真正的定制。许多人使用WordPress创建仅会员网站。

您始终可以使用插件,但是如果您只需要稍作修改,那么只需几行代码就可以安装插件。以下是一些简单但有效的技巧,可用于创建仅会员网站。

 

会员专用内容(无插件)

如果您的站点上有某些内容只想显示给注册成员,则可以通过在主题中使用以下代码来实现。两者之间is_user_logged_in发生的一切只有成员才能看到。

1 <?php if ( is_user_logged_in() ) { ?>
2 // Content for Logged in user
3 <?php } else {?>
4 // Content for everyone else
5 <?php }?>
网站建设

网站建设

 

在任何地方显示WordPress登录表单并对其进行自定义

如果您想在主题的任何位置包含WordPress登录表单,可以使用以下功能:

1 <?php wp_login_form(); ?>

但是,它不提供自定义登录表单的选项,因为它只是直接拉出默认的WordPress登录表单。如果您想显示这样的内容怎么办?

这是执行此操作的代码。将以下代码粘贴到您希望显示表单的任何位置。

1 // WordPress Login Form
2 <?php if (!(current_user_can(‘level_0′))){ ?>
3 <h3>Member Login</h3>
4 <form action="<?php echo get_option(‘home’); ?>/wp-login.php" method="post">
5 <table width=’100%’ cellspacing="0" cellpadding="0">
6 <tr>
7 <td>
8 <label><?php _e( ‘Username’ ) ?></label>
9 <input type="text" name="log" class="input" value="<?php echo attribute_escape(stripslashes($user_login)); ?>" />
10 </td>
11 <td>
12 <label><?php _e( ‘Password’ ) ?></label>
13 <input type="password" name="pwd" class="input" value="" />
14 </td>
15 </tr>
16 <tr>
17 <td colspan="2"><?php do_action(‘login_form’); ?>

网页设计

18</td>
19</tr>
20<tr>
21<td>
22<a href="<?php echo site_url(‘wp-login.php?action=lostpassword’, ‘login’) ?>" title="<?php _e(‘Password Lost and Found’) ?>"><?php _e(‘Forgot Password?’) ?></a>
23</td>
24<td>
25<input type="submit" name="submit" value="Log In" class="button" />
26<input type="hidden" name="redirect_to" value="http://<?php echo $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'] ?>" />
27</td>
28</tr>
29</table>
30</form>
31<?php } else { ?>
32<!– When User logged in Show the following info –>
33<h2>Logout</h2>
34<?php get_currentuserinfo();?>
35Welcome Back &nbsp<?php echo($current_user->user_login . " ");?><br />
36<a href="<?php echo wp_logout_url(urlencode($_SERVER['REQUEST_URI'])); ?>">Logout</a><br />
37<a href="<?php echo get_admin_url(); ?>">Admin?</a><!– If you are admin goes to admin dashboard –>
38<?php }?>

您可以添加CSS div标签对其进行样式设置。使用此登录表单的优点是,您几乎可以通过使用get_currentuserinfo()函数为成员创建一个小型仪表板,并显示有关该用户的任何信息。

 

会员的自定义WordPress菜单

像内容一样,您可以为成员创建自定义WordPress菜单。让我们先注册菜单。转到主题函数文件(functions.php)。使用以下代码注册菜单。

1 register_nav_menus( array(
2 ‘primary’ => __( ‘Primary Navigation’, ‘twentyten’ ),
3 ‘visitor’ => __( ‘Visitor Navigation’, ‘twentyten’ ),
4 ‘footer’ => __( ‘Footer Navigation’, ‘twentyten’ ),
5 ) );

现在,将以下代码放置在您希望菜单显示的位置,很可能在header.php文件中。

1 <?php
2 if ( is_user_logged_in() ) {
3 wp_nav_menu( array( ‘container_class’ => ‘menu-header’, ‘theme_location’ => ‘primary’ ) );
4 else {
5 wp_nav_menu( array( ‘container_class’ => ‘menu-header’, ‘theme_location’ => ‘visitor’ ) );
6 };?>

现在,您需要在WordPress反手上实际创建菜单。“菜单”设置应位于外观标签下。创建一个名为main和visitor的菜单。在两个菜单上,添加要显示的内容。例如:如果您希望仅在用户登录时才显示页面,则将其添加到主菜单中。

您也可以使用相同的方法创建动态页脚菜单。

适用于Blogger的WordPress自定义字段和黑客

您可以使用WordPress创建自定义且外观专业的网站。在这篇文章中,我们将分享一些WordPress自定义字段的技巧和技巧,使您拥有一个更好的WordPress驱动的网站。

有时可能会有客座博主在您的网站上只写一篇文章,仅此而已。您可以使用此方法显示常规作者信息。请记住,作者已在WordPress中注册。也许您不想每次新来宾作者写信时都进行注册。但是,如何仍然获得来宾作者信息以与常规作者相同的格式显示?自定义字段!

 

头版的来宾作者姓名和个人帖子

我们需要做的第一件事是设置WordPress if语句以获取自定义字段值。这样,只有在分配了自定义文件值时,它才会显示。打开“ index.php”和“ single.php”,然后将以下代码粘贴到希望显示作者姓名的位置。可能是在日期之后或在评论之后。例如下面的代码:

1 <?php the_time(‘M j, Y’) ?>
1 < ?php if ( get_post_meta($post->ID, 'guest_author_name', true) ) { ?>
2 // check to see if custom field guest author name exists
3 < ?php echo get_post_meta($post->ID, "guest_author_name"$single = true); ?>
4 < ?php } ?>/

一旦放置了if语句,我们就可以在希望显示来宾作者姓名的任何帖子上调用它。来宾作者姓名应显示在首页上,且仅用于特定帖子。

 

个别帖子的来宾作者信息块

好的,因此我们在帖子元描述中显示了该名称,但是有关来宾作者的一些信息也将很不错。

同样,首先我们有条件的if语句,该语句查找作者图像的缩略图和描述。不要忘记更改映像目录。另外,我们在块和拇指上附加了一个类,它允许使用CSS设置图像和块的样式。

1 <?php if ( get_post_meta($post->ID, ‘autho_thumb’, true) ) { ?> // checks to see if the custom field exist
2 <div class="writer_bio">
3 <img class="autho_thumb" src="http://media.webdesignviews.com/author/<?php $values = get_post_custom_values("autho_thumb"); echo $values[0]; ?>" alt="Author Thumb" width="60" width="60" height="60" /><?php } ?
4 <?php if ( get_post_meta($post->ID, ‘guest_author’, true) ) { ?>
5 <?php echo get_post_meta($post->ID, "guest_author"$single = true); ?></div>
6 <?php } ?>

这是我使用的CSS

1 .writer_bio {
2 color#666;
3 background#eee;
4 text-transformnone !important;
5 font-size13px;
6 font-weightnormal;
7 height75px;
8 width600px;
9 padding6px;
10 padding-bottom6px;
11 padding-left0;
12 margin-bottom10px;
13 }
14 .writer_bio img {
15 padding0 !important;
16 floatleft !important;
17 margin-left4px !important;
18 margin-top3px !important;
19 border2px #ccc solid !important;
20 height60px;
21 }

您甚至可以使用autho_thumb类来设置更多样式。完成后,您需要做的就是在字段中添加autho_thumb和guest_author并填写信息。您甚至可以在自定义字段中添加HTML,例如链接。

因此,您有两个自定义字段用于访客作者信息。这似乎需要很多步骤。相信我,一旦完成,只需要在下一次添加图像和描述时就可以了。

 

更好的自定义字段,用于在首页上显示帖子图像

此方法用于在前面显示帖子的缩略图。我想进一步介绍一下,让前端用户容易一些。而且,使用让恩(Jean)的方法,每个图像都将具有相同的alt =“ post-image”,我可能对搜索引擎不利。此外,您每次都必须包含图像的整个URL。首先是代码:

1 <?php $postimageurl = get_post_meta($post->ID, ‘post-img’, true);
2 // variable for image
3 $image_alt = get_post_meta($post->ID, ‘post-img’, true);// variable for description
4 // check if the the custom field is called
5 if ($postimageurl) {
6 ?>
7 <a href="<?php the_permalink(); ?>" rel="bookmark"><img src="<?php echo $postimageurl; ?>" class=
8 quot;post-img" alt="<?php echo $image_alt; ?>"; width="500" height="300" /></a>
9 <?php } else { ?>

在解释代码之前,请注意,我没有为默认的拇指添加else语句。如果要在默认字段中分配默认图片,请查看Jean的帖子。

首先,我们有两个变量$ postimageurl和$ image_alt。第一个是获取图像位置,第二个是添加图像名称。然后再次设置if语句,以检查是否调用了自定义字段。

1 <?php echo get_option(‘siteurl’).‘/wp-content/uploads/thumb/’?>

上面代码获得图像位置的是不同的东西。我在WordPress上载目录中创建了一个名为thumb的文件夹,因此,将图像上载到文件夹中后,不必每次都只键入图像名称,而不必键入整个URL。

如果您想要一个不同的目录(例如,假设您要将图片存储在域的根目录中),请替换<?php echo get_option(‘siteurl’).‘/wp-content/uploads/thumb/ ?><?php echo $postimageurl; ?>http://yourwebsite.com/images/<?php echo $postimageurl; ?>

因此,对代码进行了一些调整,因此每个帖子图像都将具有不同的alt(标题),并且您将键入图像名称扩展名而不是整个URL。

 

根据需要安排WordPress导航

首先要知道的是使用wp_list_pages标记的wordpress列表页面,该标记通常位于header.php中。但您可能不想列出所有页面。如果要隐藏某些页面以免出现,请执行以下操作:

1 <?php wp_list_pages(‘include=7,13′ ); ?>
2 //or
3 <?php wp_list_pages(‘exclude=5,9′);? >

排除或包含几乎相同的方法。排除将忽略WordPress页面列表中的某些页面,仅包括显示您指定的页面ID。但是,大多数Web设计博客或任何其他博客都喜欢使用标签或类别作为导航。在这种情况下,您可以摆脱wp_list标记,并自定义导航代码。另外,您也可以使用标签来执行此操作。以这种方式进行编码的好处是,您可以分配CSS类来为导航的每个元素设置样式。

如何找到您的WordPress页面ID

最近,我不得不在要使用的模板中查找要排除的页面ID,大约10分钟后,终于找到了一种简单的方法来查找WordPress“页面”的页面ID。

在较旧的WordPress版本中,我相信这样做会更容易,但是现在您可以按照以下方法进行操作。

  1. 进入WordPress管理面板,然后转到“页面”。
  2. 然后将鼠标悬停在您想知道其ID的页面上。
  3. 您将在浏览器底部的状态栏中看到ID(请参见下文)。

如果看不到完整地址,请尝试其他方法(下面进一步)。

  1. 进入WordPress管理面板,然后转到“页面”。
  2. 然后,您将在地址栏中看到ID。它是等号后的数字。
  3. 单击您想知道其ID的页面。

 

显示存档主题

大多数WordPress主题都带有archive.php页面。但是,我看到了许多网站,这些网站的存档页面不是很有用,并且无法告诉用户他们正在浏览什么主题或类别。您可以在archive.php中添加以下代码,以避免混淆。

1 <?php /* If this is a category archive */ if (is_category()) { ?>
2 <h3 class="pagetitle">Current Browsing Topic: &#8216;<?php single_cat_title(); ?>&#8217;</h3>
3 <?php /* If this is a tag archive */ elseif( is_tag() ) { ?>
4 <h3 class="pagetitle">Posts Tagged &#8216;<?php single_tag_title(); ?>&#8217;</h3>

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/262000.html

(0)
上一篇 2022年5月25日
下一篇 2022年5月25日

相关推荐

发表回复

登录后才能评论