如何使用博客类型插件创建博客类别页面

时间:2011-07-19 作者:ken

我不是web开发人员,所以我不知道如何创建sql查询来显示数据库中的信息。

这是我想做的,我想有一个显示博客类别的页面。当访问者单击某个类别时,将在该类别下显示博客列表。

我已经在数据库中存储了一个表和信息,但我不知道如何在前端显示它。

    CREATE TABLE `wp_blog_types` (
  `blog_types_ID` bigint(20) unsigned NOT NULL auto_increment,
  `blog_ID` bigint(20) NOT NULL,
  `blog_types` TEXT NULL,
  `blog_subtypes` TEXT NULL,
  PRIMARY KEY  (`blog_types_ID`)
) ENGINE=MyISAM;

CREATE TABLE `wp_signup_blog_types` (
  `blog_types_ID` bigint(20) unsigned NOT NULL auto_increment,
  `blog_types_domain` varchar(255) NOT NULL,
  `blog_types_path` varchar(255) NOT NULL,
  `blog_types` TEXT NULL,
  `blog_subtypes` TEXT NULL,
  PRIMARY KEY  (`blog_types_ID`)
) ENGINE=MyISAM;
我想使用一个短代码来显示基于该sql代码的信息。

1 个回复
SO网友:endle.winters

看起来原始海报已经有一段时间没有出现了,但我正在开发同一个插件,试图找出一种方法使其可用。一年多来,开发人员一直在说,他们将着手更新这个插件,但现在你必须发明自己的使用方法。在我的搜索中,很多人一直在问如何做到这一点:那么,以下是我迄今为止得出的结论。我的PHP技能很低,所以请简短地说出您的嘲讽,我们非常感谢您对如何使其更加简洁的反馈:

我写了一个可以放在函数中的函数。php文件,然后您可以在任何页面模板上使用该函数,例如(仅举一个示例):

<h3 class="pagetitle">A List of Categories and Sites</h3>
<?php get_blog_types(); ?> 
下面是函数:

<?php 
 function get_blog_types() {

  global $wpdb , $blog_types , $blog_subtypes;

  //first I get all of the blog_type names
    foreach($blog_types as $blog_type){
       $blog_type_name = $blog_type[\'nicename\'];
        $blogtypenames = $wpdb->get_results("SELECT blog_ID, blog_types FROM wp_blog_types where blog_types = \'|$blog_type_name|\' ");      //echo the blog-type
            echo \'<h3>\';
            echo  $blog_type[\'name\'];
            echo \'</h3>\';


            //Second I get the sites in each blog-type
            foreach( $blogtypenames as $blogtypename ) {

             //Third I get he names of those sites
           $sitename = $wpdb->get_results("SELECT option_value, blog_id FROM wp_".$blogtypename->blog_ID ."_options WHERE       option_name=\'blogname\' ");

           foreach( $sitename as $name ) { 

           $blogs = $wpdb->get_results("SELECT domain,path FROM wp_blogs where blog_id = ". $blogtypename->blog_ID.""); 
        foreach( $blogs as $blog ) {        
            // Create bullet
            echo \'<li>\';
            echo \'<a href="http://\';
            echo $blog->domain;
            echo $blog -> path;
            echo \'">\';
            echo $blogtypename->blog_ID;
            echo $name->option_value;
            echo \'</a></li>\';
             }; //end fifth
            }; //end fourth
        }; //end third
     }; //end second

    } //end first
?>
我将进一步研究它,以包括子类型,并可能在我完成更多工作后将其转换为插件,但我认为将其发布给任何其他正在处理此问题的人会很有帮助。

结束

相关推荐

Blog Posts not showing title

我将阅读设置设置为静态页面,博客设置为一个名为“新内容”的页面。当我转到“最新信息”页面时,我可以看到帖子内容,但没有显示带有帖子页面链接的帖子标题。我只能看到帖子的内容。我已经尽了我所能找到错误,运气不好,请帮忙!索引代码。php:<div id=\"content\" class=\"narrowcolumn\" role=\"main\"> <?php if (have_posts()) : ?> <?php while (hav