• 注册
    • 今日签到
    • 连续签到
  • 游骑兵
    今天 00:00
    连续13
    关注
  • huiwu
    今天 01:56
    连续1
    关注
  • hanaicc
    今天 02:43
    连续3
    关注
  • xinle
    今天 04:54
    连续14
    关注
  • xinle
    很开心曾经在水晶之家与大家寻梦
    连续14
    关注
  • 连续13
    关注
  • 连续3
    关注
  • 连续1
    关注
  • 网站维护 关注:2 内容:14

    网站及其附属程序更新记录贴

  • 查看作者
  • 打赏作者
  • 拉黑名单
    • 这个帖子主要记录平常对网站程序的一些修改,方便以后索引查找相关内容。以前的网站wordpress函数记录帖:https://photo.babylyf.com//wordpress。

      2017.11.19更新日志:优化360浏览器搜索卡片显示


      搜索内容页卡片,谷歌浏览器一直正常。但是360浏览器有些小错位兼容问题。CSS:原来LEFT:-199;改变RIGHT:0;

      (WP_Query)功能非常强大,搜索只需要加入适合的参数即可调用指定内容,比如只搜索亦菲视频中包含dior的内容。

      //搜索结果排除所有页面//显示movie涉及模板仙都style的文章读取
      function search_filter_page($query) {
      if ($query->is_search) {
      $query-> set( 'post_type', array( 'post', 'movie' ) );//搜索数据只展示post+movie文章模型
      }
      return $query;
      }
      add_filter('pre_get_posts','search_filter_page');
      show_admin_bar(false);

      仙都style将原来的页面索引数据改为搜索内容

      //判断内容是不是属于movie文章模型,输出不同内容
      if ( 'movie' == get_post_type() )
      {echo '仙都';}
      else{
      echo'新闻';	}

      删除年份标签,显示相关内容更加精确。使用系统自带参数按年索引亦菲年度新闻

      回复

      2017.12.102更新日志:wordpress升级到4.91版本

      1. 网站程序升级到最新版本,需要手动修改\wp-includes\widgets\class-wp-widget-categories.php

      1. 移动端优化新闻内容页及视频内容页,同时评论框做了一些CSS简单改动。

      1. 取消了评论作者浏览器UA信息,只展示用户系统和IP地理位置。比如Windows7 Iphone Android。

      1. 备份数据如下:数据库83MB 视频1372个44GB。其中831.1289视频报错,等待修复上传

      /*UA信息源代码来自: 网站链接*/
          function user_agent($ua) {
              //开始解析操作系统
              $os = null;
              if (preg_match('/Windows NT 6.0/i', $ua)) {
                  $os = "Windows Vista";
              } elseif (preg_match('/Windows NT 6.1/i', $ua)) {
                  $os = "Windows 7";
              } elseif (preg_match('/Windows NT 6.2/i', $ua)) {
                  $os = "Windows 8";
              } elseif (preg_match('/Windows NT 6.3/i', $ua)) {
                  $os = "Windows 8.1";
              } elseif (preg_match('/Windows NT 10.0/i', $ua)) {
                  $os = "Windows 10";
              } elseif (preg_match('/Windows NT 5.1/i', $ua)) {
                  $os = "Windows XP";
              } elseif (preg_match('/Windows NT 5.2/i', $ua) && preg_match('/Win64/i', $ua)) {
                  $os = "Windows XP 64 bit";
              } elseif (preg_match('/Android ([0-9.]+)/i', $ua, $matches)) {
                  $os = "Android " ;
              } elseif (preg_match('/iPhone OS ([_0-9]+)/i', $ua, $matches)) {
                  $os = 'iPhone ' ;
              } else {
                  $os = 'Mac OS';
              }       return $os . "  |  " . $browser; }

      前台调用参数user_agent($comment->comment_agent)

      回复

      2017.12.24更新日志:wordpress输出文章所有图片,并且图片一定数量自动换行分页

      $args = array(
      'post_type' => 'attachment',
      'numberposts' => 99,
      'post_status' => null,
      'post_parent' => $post->ID,
      'post_mime_type' => 'image',
      'order' => 'ASC',
      'orderby' => 'menu_order',
      'exclude' => array (get_post_thumbnail_id())
      
      );
      $attachments = get_children( $args );
      if ( $attachments ) {
      	$arr = array(1,2,3,4,5,6,7,8,9,0);
      	$i = 1;
      foreach($attachments as $v){
      	$photo=$v->guid;	
        echo $photo;
          if ($i == 3)
          {
              echo '进行分页处理';
              $i = 1;
          }
          else
          {
              echo '';
              $i++;
          }
      		
      }
      }


      回复

      读取文章所有图片地址,同时每隔三行进行一个换行处理。主要是想每三张图片做一个分页,亦菲照片比较多的花可以做很多分页展示。系统只能在内容区域执行分页代码。因此有待深入完善解决,半成品

      回复

      2017.12.25更新日志:wordpress文章所有图片重新截取缩略图

      //图片img标签添加alt,title属性

      function imagesalt($content) {
      global $post;
      $pattern ="/<img(.*?)src=('|\")(.*?).(bmp|gif|jpeg|jpg|png)('|\")(.*?)>/i";
      $replacement = '<img$1src= 网站链接$3.$4&w=350&q=90& alt="'.$post->post_title.'" title="'.$post->post_title.'"$6>';
      $content = preg_replace($pattern, $replacement, $content);
      return $content;
      }
      add_filter('the_content', 'imagesalt');

      给文章img新增样式表,利用timthumb.php自动重新生成所有日志照片。最终文章输出图片是timthumb.php产生的缩略图。点击图片链接的是原图。解决了亦菲相册显示加载缓慢的问题,前台读取缩略图,灯箱读取原图。

      timthumb生成的缩略图影响非亦菲相册文章,造成极大不美观。故而新增判断语句,只有文章模型且分类ID为亦菲相册才执行样式表更换。
      修复百度分享在https模式无法使用的问题,解决办法是将JS文件存储为本地服务器。

      回复

      2017.12.28更新日志:新增简易主页,可查评论及文章避免普通用户进入后台。

      if (function_exists('register_sidebar')) {
      register_sidebar(array(
      'name' => '全站侧栏',
      'id' => 'widget_sitesidebar',
      'before_widget' => '<div class="widget %2$s">',
      'after_widget' => '</div>',
      'before_title' => '<div class="title"><h2>',
      'after_title' => '</h2></div>'
      ));
      register_sidebar(array(
      'name' => '首页侧栏',
      'id' => 'widget_sidebar',
      'before_widget' => '<div class="widget %2$s">',
      'after_widget' => '</div>',
      'before_title' => '<div class="title"><h2>',
      'after_title' => '</h2></div>'
      ));
      register_sidebar(array(
      'name' => '分类/标签/搜索页侧栏',
      'id' => 'widget_othersidebar',
      'before_widget' => '<div class="widget %2$s">',
      'after_widget' => '</div>',
      'before_title' => '<div class="title"><h2>',
      'after_title' => '</h2></div>'
      ));
      register_sidebar(array(
      'name' => '文章页侧栏',
      'id' => 'widget_postsidebar',
      'before_widget' => '<div class="widget %2$s">',
      'after_widget' => '</div>',
      'before_title' => '<div class="title"><h2>',
      'after_title' => '</h2></div>'
      ));
      register_sidebar(array(
      'name' => '页面侧栏',
      'id' => 'widget_pagesidebar',
      'before_widget' => '<div class="widget %2$s">',
      'after_widget' => '</div>',
      'before_title' => '<div class="title"><h2>',
      'after_title' => '</h2></div>'
      ));
      }
      //调用指定侧边栏函数
      if (function_exists('dynamic_sidebar') && dynamic_sidebar('widget_news')) : endif;

      做一个全站统计是不是很酷?长久的博客越来越少,何不给自己的一个统计,看看自己在这个博客上努力了多少,不但给自己也给游客,wp_count_posts是在 WordPress 中用来统计文章数量的函数,可以统计所有类型的文章(post)和页面(page)。
      描述
      wp_count_posts是在 WordPress 中用来统计文章数量的函数,可以统计所有类型的文章(post)和页面(page)。

      //获取文章数量
      $postcount = wp_count_posts();
      //获取页面数量
      $pagecount = wp_count_posts('page');

      返回值
      使用上大致也就上面两种形式,
      该函数的使用主要是在返回值上,
      上面两种形式都会返回一个对象,
      如下:可能数值上不太一样,但结构是一样的

      object(stdClass)#296 (8) {
      //已发布
        ["publish"]=>string(1) "7"
      //定时发布
        ["future"]=>int(0)
      //草稿
        ["draft"]=>int(0)
      //正在编辑的?(有待考证)
        ["pending"]=>int(0)
      //隐私
        ["private"]=>int(0)
      //垃圾箱
        ["trash"]=>int(0)
      //自动草稿
        ["auto-draft"]=>int(0)
      //这个不知道,也没研究
        ["inherit"]=>int(0)
      }

      使用实例
      如何使用返回的对象呢?
      以文章数量为例,并以上面的返回数值为例

      $postcount = wp_count_posts();
      //显示已发布的文章数量
      echo '本博客共有'.$postcount->publish.'文章已发布';
      剩下的你就可以举一反三了。


      回复

      2017.12.31更新日志:网站系统环境迁移Liunx cenos7

      历史三天,备份数据。网站环境测试搭建数据还原。网站系统从windows2008 ISS迁移到cenos7 apache环境。全站数据做了一次年终备份,所有本地媒体图片都进行了一次压缩处理。迁移过程遇到了很多问题,经验不足导致网站迟迟未能上线。目前所有BUG问题都已解决,但后续是否能稳定运营仍有不确定因素。

      //apache环境wordpress伪静态,及其http自动301跳转https 根目录 .htaccess
      
      RewriteEngine On
      RewriteBase /
      RewriteRule ^index\.php$ - [L]
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule . /index.php [L]
      Options +FollowSymLinks
      RewriteEngine on
      RewriteCond %{SERVER_PORT} !^443$
      RewriteCond %{REQUEST_URI} !^/tz.php
      RewriteRule (.*)  网站链接{SERVER_NAME}/$1 [R]


      回复

      茜茜助手重新开放,亦菲菜单修复完成。网站头部横幅图片取自小姐姐妮可,共七张图片。一周每天都会更变


      回复
      //wordpress会员可见,原理是将投稿者用户组名字改为VIP会员,后台注册用户请设置默认为订阅者。写文章的时候使用短代码 [vip]会员可见,游客订阅者不可见[/vip]。文章编辑内容页配置了快捷菜单。
      //将WordPress投稿者更名为VIP会员
      function wps_change_role_name() {
      global $wp_roles;
      if ( ! isset( $wp_roles ) )
      $wp_roles = new WP_Roles();
      $wp_roles->roles['contributor']['name'] = 'Vip会员';
      $wp_roles->role_names['contributor'] = 'Vip会员';
      }
      add_action('init', 'wps_change_role_name');
      // 文章编辑页面自定义短代码、如果主题自带了,请删除手动添加
      function appthemes_add_quicktags()
      {?>
      <script type="text/javascript">
      QTags.addButton( 'vip', '会员可见', "[vip]", "[/vip]" );
      </script>
      <?php
      }
      add_action('admin_print_footer_scripts', 'appthemes_add_quicktags' );
      //vip短代码,只有大于或等于指定权限的用户会才能显示内容
      function cen_vip($atts, $content = null) {
      //level_是WordPress系统会员权限,最高10是administrator最低0是订阅者 投稿者=vip会员权限是1.
      global $user_ID; if( $user_ID && current_user_can('level_1') ) {
      return $content;
      }else{
      //权限不足输出内容,请自定CSS样式
      return '注意:本段内容只有VIP会员才能观看,请升级成为会员吧';
      }
      }
      add_shortcode('vip', 'cen_vip');


      回复

      wpjam-basic\public\wpjam-hooks.php
      这个插件第一个行:// header('X-Frame-Options: deny');
      禁止网页被Frame,导致网站部分页面Frame无法加载。该插件目前还很依赖无法卸载,如果更新遇到这个问题,记得修正。

      回复
      <style>.video-js {
      width: 100%;
      height: 495px;
      }
      </style>
      <video id="videojs-playlist-player" controls preload="auto" controls oncontextmenu="return false;"class="video-js vjs-default-skin" controls>
      </video>
      <link href="https://www.babylyf.com/wp-content/themes/Git-master/css/video-js.css" rel="stylesheet">
      <script src="https://www.babylyf.com/wp-content/themes/Git-master/js/video.js"></script>
      <link href="https://www.babylyf.com/wp-content/themes/Git-master/js/videojs-playlist.css" rel="stylesheet">
      <script src="https://www.babylyf.com/wp-content/themes/Git-master/js/videojs-playlist.js"></script>
      <script>
      (function(window, videojs) {
      var playlist = [
      {
      "src" : "//cdn.babylyf.com/<?php echo get_post_meta($post->ID, 'video_name', true); ?>.mp4",
      "type": "video/mp4",
      "title": "<?php the_title();?>",
      "thumbnail": "<?PHP $img_src = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), "Full");
      echo $img_src[0]; ?>"
      },<?php
      $post_num = 3;
      $exclude_id = $post->ID;
      $posttags = get_the_tags();
      $i = 0;
      if ($posttags) {
      $tags = '';
      foreach ($posttags as $tag) $tags.= $tag->term_id . ',';
      $args = array(
      'post_status' => 'publish',
      'tag__in' => explode(',', $tags) ,
      'post__not_in' => explode(',', $exclude_id) ,
      'category__not_in' => array(889,152,153,154), // 不包括的分类ID
      'caller_get_posts' => 1,
      'orderby' => 'comment_date',
      'posts_per_page' => $post_num
      );
      query_posts($args);
      while (have_posts()) {
      the_post(); ?>
      {"src" : "//cdn.babylyf.com/<?php echo get_post_meta($post->ID, 'video_name', true); ?>.mp4",
      "type": "video/mp4",
      "title": "<?php
      the_title(); ?>",
      "thumbnail": "<?PHP $img_src = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), "Full");
      echo $img_src[0]; ?>"
      },
      <?php
      $exclude_id.= ',' . $post->ID;
      $i++;
      }
      wp_reset_query();
      }
      if ($i < $post_num) {
      $cats = '';
      foreach (get_the_category() as $cat) $cats.= $cat->cat_ID . ',';
      $args = array(
      'category__in' => explode(',', $cats) ,
      'post__not_in' => explode(',', $exclude_id) ,
      'caller_get_posts' => 1,
      'orderby' => 'comment_date',
      'posts_per_page' => $post_num - $i
      );
      query_posts($args);
      while (have_posts()) {
      the_post(); ?>
      <?php
      $i++;
      }
      wp_reset_query();
      }
      if ($i == 0) echo '<div class=\"r_title\">没有相关文章!</div>'; ?> ];
      var player = window.player = videojs('videojs-playlist-player', { preload: true, techOrder: ["youtube", "html5"], controls: true});
      player.playlist({ videos: playlist, playlist : { hideSidebar: false, upNext: true, hideIcons: false, thumbnailSize: 300, items: 3 } });
      }(window, window.videojs));
      </script>

      video.js及playlist代码,实现视频播放可连续播放相关视频

      回复
      <div class="related_posts">
      <div style="position: relative; width: 24.5%; height: 185px; float: left;">
      <div class="img"><a title="&lt;?php the_title(); ?&gt;" href="&lt;?php the_permalink(); ?&gt;" target="_blank" rel="noopener"><!--?php
      if (git_get_option('git_cdnurl_b') ) {
      echo '&lt;img class="QQ" style="width:180px;height:150px" src="'; echo post_thumbnail_src(); echo '?imageView2/1/w/185/h/110/q/75" alt="' . get_the_title() . '" ?-->'; } else { echo '<img class="QQ" style="width: 196px; height: 165px;" src="' . get_template_directory_uri() . '/timthumb.php?src='; echo post_thumbnail_src(); echo '&amp;h=200&amp;w=200&amp;q=90&amp;zc=1&amp;ct=1" alt="' . get_the_title() . '" />'; } ?&gt; </a></div>
      <span style="text-align: righ; position: absolute; top: 150px; left: 10px; float: left; background-color: #e6e6fa; filter: Alpha(Opacity=70); /*ie*/ -moz-opacity: 0.8; /*ff*/ opacity: 0.8;">相册:<!--?php echo pic_total(); ?-->(张)</span>
      </div>
      &nbsp;
      <div style="position: relative; width: 24.5%; height: 185px; float: left;">
      <div class="img"><a title="&lt;?php the_title(); ?&gt;" href="&lt;?php the_permalink(); ?&gt;" target="_blank" rel="noopener"><!--?php
      if (git_get_option('git_cdnurl_b') ) {
      echo '&lt;img class="QQ" style="width:180px;height:150px" src="'; echo post_thumbnail_src(); echo '?imageView2/1/w/185/h/110/q/75" alt="' . get_the_title() . '" ?-->'; } else { echo '<img class="QQ" style="width: 196px; height: 165px;" src="' . get_template_directory_uri() . '/timthumb.php?src='; echo post_thumbnail_src(); echo '&amp;h=200&amp;w=200&amp;q=90&amp;zc=1&amp;ct=1" alt="' . get_the_title() . '" />'; } ?&gt; </a></div>
      <span style="text-align: righ; position: absolute; top: 150px; left: 10px; float: left; background-color: #e6e6fa; filter: Alpha(Opacity=70); /*ie*/ -moz-opacity: 0.8; /*ff*/ opacity: 0.8;">视频:<!--?php echo get_post_meta($post-&gt;ID, 'video_time', true) ?--></span>
      </div>
      &nbsp;
      &nbsp;
      </div>
      视频播放页面,相关内容相册推荐,如果相册内容不足就随机视频填充。以后可供参考CSS
      回复

      启用fancybox灯箱插件,移动和PC都启用了。弃用之前都是JQ灯箱。刘亦菲站外数据中心也使用fancybox来调用

      回复
      你需要登录,才能进行发帖操作
    • 帖子间隔 侧栏位置: