File: /virtual/nagasaki/public_html/shop/wp-content/themes/riffles_ver1.1/functions.php
<?php
/**
* @package Riffles
* @link http://www.u-hg.com/
* @author RiffleHatch
* @copyright Copyright (c)2014 RiffleHatch
*/
/**
* Set the content width based on the theme's design and stylesheet.
*/
if ( ! isset( $content_width ) ) {
$content_width = 640; /* pixels */
}
if ( ! function_exists( 'riffles_setup' ) ) :
/**
* Sets up theme defaults and registers support for various WordPress features
*/
function riffles_setup() {
/*
* Translations can be filed in the /languages/ directory.
*/
load_theme_textdomain( 'riffles', get_template_directory() . '/languages' );
// Add default posts and comments RSS feed links to head.
add_theme_support( 'automatic-feed-links' );
//add_theme_support( 'post-thumbnails' );
add_theme_support( 'post-thumbnails' );
set_post_thumbnail_size( 600, 300, true );
// This theme uses wp_nav_menu() in one location.
register_nav_menus( array(
'primary' => __( 'Primary Menu', 'riffles' ),
) );
register_nav_menus( array(
'itemcat' => __( 'itemcat Menu', 'riffles' ),
) );
/*
* Switch default core markup for search form, comment form, and comments
* to output valid HTML5.
*/
add_theme_support( 'html5', array(
'search-form', 'comment-form', 'comment-list', 'gallery', 'caption',
) );
/*
* Enable support for Post Formats.
* See http://codex.wordpress.org/Post_Formats
*/
add_theme_support( 'post-formats', array(
'aside', 'image', 'video', 'quote', 'link',
) );
// Setup the WordPress core custom background feature.
add_theme_support( 'custom-background', apply_filters( 'riffles_custom_background_args', array(
'default-color' => 'ffffff',
'default-image' => '',
) ) );
add_theme_support( 'custom-header', apply_filters( 'riffles_custom_header_args', array(
'header-text' => false,
'default-image' => get_template_directory_uri() .'/img/header.jpg',
'width' => 1350,
'height' => 500,
) ) );
}
endif; // riffles_setup
add_action( 'after_setup_theme', 'riffles_setup' );
/**
* Register widget area.
*
* @link http://codex.wordpress.org/Function_Reference/register_sidebar
*/
function riffles_widgets_init() {
register_sidebar( array(
'name' => __( 'TOP用&右上部_item-no', 'riffles' ),
'id' => 'sidebar-1',
'description' => '',
'before_widget' => '<aside id="ads" class="widget %2$s">',
'after_widget' => "</aside>",
'before_title' => '<h4 class="widget-title">',
'after_title' => '</h4>',
) );
register_sidebar( array(
'name' => __( '左サイドバー', 'riffles' ),
'id' => 'sidebar-2',
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget' => "</aside>",
'before_title' => '<h4 class="widget-title">',
'after_title' => '</h4>',
) );
register_sidebar( array(
'name' => __( '右サイドバー_item-no', 'riffles' ),
'id' => 'sidebar-3',
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget' => "</aside>",
'before_title' => '<h4 class="widget-title">',
'after_title' => '</h4>',
) );
register_sidebar( array(
'name' => __( 'footer-1', 'riffles' ),
'id' => 'footer-1',
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget' => "</aside>",
'before_title' => '<h4 class="widget-title">',
'after_title' => '</h4>',
) );
register_sidebar( array(
'name' => __( 'footer-2', 'riffles' ),
'id' => 'footer-2',
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget' => "</aside>",
'before_title' => '<h4 class="widget-title">',
'after_title' => '</h4>',
) );
register_sidebar( array(
'name' => __( 'footer-3', 'riffles' ),
'id' => 'footer-3',
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget' => "</aside>",
'before_title' => '<h4 class="widget-title">',
'after_title' => '</h4>',
) );
register_sidebar( array(
'name' => __( 'footer-4', 'riffles' ),
'id' => 'footer-4',
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget' => "</aside>",
'before_title' => '<h4 class="widget-title">',
'after_title' => '</h4>',
) );
register_sidebar( array(
'name' => __( '商品P左サイドバー', 'riffles' ),
'id' => 'sidebar-5',
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget' => "</aside>",
'before_title' => '<h4 class="widget-title">',
'after_title' => '</h4>',
) );
register_sidebar( array(
'name' => __( '固定P左サイドバー', 'riffles' ),
'id' => 'sidebar-6',
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget' => "</aside>",
'before_title' => '<h4 class="widget-title">',
'after_title' => '</h4>',
) );
register_sidebar( array(
'name' => __( '高画質スイッチ', 'riffles' ),
'id' => 'sidebar-7',
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget' => "</aside>",
'before_title' => '<h4 class="widget-title">',
'after_title' => '</h4>',
) );
register_sidebar( array(
'name' => __( '記事下関連記事用', 'riffles' ),
'id' => 'sidebar-8',
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget' => "</aside>",
'before_title' => '<h4 class="widget-title">',
'after_title' => '</h4>',
) );
register_sidebar( array(
'name' => __( '右サイド関連記事用', 'riffles' ),
'id' => 'sidebar-9',
'before_widget' => '<aside id="%1$s" class="widget %2$s">',
'after_widget' => "</aside>",
'before_title' => '<h4 class="widget-title">',
'after_title' => '</h4>',
) );
}
add_action( 'widgets_init', 'riffles_widgets_init' );
/**
* Enqueue scripts and styles.
*/
function riffles_scripts() {
wp_enqueue_style( 'base.css', get_template_directory_uri() .'/scss/style.css', array(), '3.5');
wp_enqueue_style( 'riffles-style', get_stylesheet_uri() );
wp_enqueue_style( 'font-awesome', '//netdna.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css');
wp_enqueue_style( 'google-fonts', '//fonts.googleapis.com/css?family=Vollkorn|Lemon|Courgette');
if (!is_admin()) {
wp_deregister_script( 'jquery' );
wp_register_script( 'jquery', '//ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js', array(), null, false);
wp_enqueue_script( 'jquery' );
wp_enqueue_script( 'jquery-1-11', '//ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js', array('jquery'), null, false);
wp_script_add_data( 'jquery-1-11', 'conditional', 'lt IE 9' );
wp_enqueue_script( 'jquery-mig', '//cdnjs.cloudflare.com/ajax/libs/jquery-migrate/1.2.1/jquery-migrate.min.js', array('jquery'), null, false);
}
if( ! is_page(array('usces-cart'))){
wp_enqueue_script( 'riffles-scripts', get_template_directory_uri() . '/js/scripts.min.js', array(), '1.8', true);
wp_enqueue_script( 'jquery-cookie', '//cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.4.1/jquery.cookie.min.js', array(), '1.0', true);
}
if( ! is_page(array('usces-cart')) && ! in_category('item') && ! is_front_page()){
wp_enqueue_script( 'blog-scripts', get_template_directory_uri() . '/js/blog.min.js', array(), '1.9', true);
}
if ( is_front_page() || ( is_single() && in_category('item') ) ){
wp_enqueue_style( 'flexslider-css', '//cdnjs.cloudflare.com/ajax/libs/flexslider/2.2.2/flexslider-min.css');
wp_enqueue_script( 'flexslider-js', '//cdnjs.cloudflare.com/ajax/libs/flexslider/2.2.2/jquery.flexslider-min.js', array(), '1.0', true);
if ( is_front_page() ){
wp_enqueue_script( 'flexslider-home', get_template_directory_uri() . '/js/flexslider-home.min.js', array(), '1.4', true);
}
if ( is_singular() ) {
wp_enqueue_script( 'riffles-itemcat-js', get_template_directory_uri() . '/js/itemcat.min.js', array(), '2.1', true);
}
}
if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
wp_enqueue_script( 'comment-reply' );
}
/**deregister*/
if(function_exists('related_posts') && term_exists('item')){
wp_dequeue_style( 'yarppWidgetCss' );
}
}
add_action( 'wp_enqueue_scripts', 'riffles_scripts' );
/**
* jquerycdn.
*/
add_filter( 'script_loader_tag', function( $tag, $handle ) {
if ( $handle === 'jquery' ) {
$tag = "<!--[if !(IE 7) & !(IE 8)]><!-->$tag<![endif]-->";
}
return $tag;
}, 10, 2 );
/**
* Custom template tags for this theme.
*/
require get_template_directory() . '/inc/template-tags.php';
/**
* Custom functions that act independently of the theme templates.
*/
require get_template_directory() . '/inc/extras.php';
/**
* nav_menu filter.
*/
add_filter('nav_menu_item_id', 'my_css_attributes_filter', 100, 1);
add_filter('page_css_class', 'my_css_attributes_filter', 100, 1);
function my_css_attributes_filter($var) {
return is_array($var) ? array_intersect($var, array('current-menu-item')) : '';
}
/**
* item archives & item search page.
*/
function my_category_item_template($category_item_template) {
$category_id = get_query_var('cat');
$parent_ids = get_ancestors($category_id, 'category');
$parent_slugs = array();
foreach ($parent_ids as $parent_id){
$parent = get_category($parent_id);
$parent_slugs[] = $parent->slug;
}
if (in_array('item', $parent_slugs) || is_category('item')){
$category_item_template = dirname( __FILE__ ) . '/archive-item.php';
}
return $category_item_template;
}
add_filter( 'category_template', 'my_category_item_template' );
function my_tag_item_template($tag_item_template) {
if ( in_category( 'item' )) {
$tag_item_template = dirname( __FILE__ ) . '/archive-item.php';
}
return $tag_item_template;
}
add_filter( 'tag_template', 'my_tag_item_template' );
function my_search_item_template($search_item_template) {
if ( is_search() && !isset($_GET['searchitem'])){
$search_item_template = dirname( __FILE__ ) . '/search-item.php';
}
return $search_item_template;
}
add_filter( 'search_template', 'my_search_item_template' );
/**
* my_query.
*/
define('POSTS_PER_PAGE_FOR_1ST',3);
define('POSTS_PER_PAGE_FOR_2ND',2);
function my_query($query){
$item_cat = get_category_by_slug('item');
$item_cat_id = $item_cat->cat_ID;
if ( is_admin() || ! $query->is_main_query() ){
return;
}
if ( $query->is_home() ){
$query->set('posts_per_page', '2');
if ( !is_paged() ){
$query->set('offset', '1');
}
$paged = get_query_var( 'paged' ) ? intval( get_query_var( 'paged' ) ) : 1;
if ($paged >= 2){
$query->set('offset', POSTS_PER_PAGE_FOR_1ST + POSTS_PER_PAGE_FOR_2ND*($paged-2) );
$query->set('posts_per_page',POSTS_PER_PAGE_FOR_2ND);
}
}
if(term_exists('item', 'category')){
if ( $query->is_home() || $query->is_author() || $query->is_date() ){
$query->set('category__not_in', $item_cat_id);
}
if ( $query->is_category() ){
$categoryname = single_cat_title('',false);
$categoryid = get_cat_ID($categoryname);
if (cat_is_ancestor_of( $item_cat_id, $categoryid ) || is_category($item_cat_id)){
$query->set('posts_per_page', '12');
$query->set('meta_query', array(
array(
'key' => '_isku_',
'value' => '"stock";s:1:"0"',
'compare' => 'LIKE',
),
array(
'key' => '_isku_',
'value' => '"stock";s:1:"1"',
'compare' => 'LIKE',
),
array(
'key' => '_isku_',
'value' => '"stock";s:1:"3"',
'compare' => 'LIKE',
),
'relation'=>'OR'
)
);
}
}
if ( $query->is_search && isset($_GET['searchitem']) ) {
$query->set('category__not_in', $item_cat_id);
}
if ( $query->is_search && !isset($_GET['searchitem']) ){
$query->set('posts_per_page','12');
$query->set('category_name','item');
$query->set('meta_query', array(
array(
'key' => '_isku_',
'value' => '"stock";s:1:"0"',
'compare' => 'LIKE',
),
array(
'key' => '_isku_',
'value' => '"stock";s:1:"1"',
'compare' => 'LIKE',
),
array(
'key' => '_isku_',
'value' => '"stock";s:1:"3"',
'compare' => 'LIKE',
),
'relation'=>'OR'
)
);
}
}
}
add_action('pre_get_posts', 'my_query');
//Remove cart page
//welcart
function my_filter_cart_row($row, $cart, $materials){
extract($materials);
$args = compact('cart', 'i', 'cart_row', 'post_id', 'sku' );
$row = '';
if ( empty($options) ) {
$optstr = '';
$options = array();
}
$row .= '<tr>
<td>';
$cart_thumbnail = '<a href="' . get_permalink($post_id) . '">' . wp_get_attachment_image( $pictid, array(60, 60), true ) . '</a>';
$row .= apply_filters('usces_filter_cart_thumbnail', $cart_thumbnail, $post_id, $pictid, $i,$cart_row);
$row .= '</td><td class="aleft">' . esc_html($cartItemName) . '<br />';
if( is_array($options) && count($options) > 0 ){
$optstr = '';
foreach($options as $key => $value){
if( !empty($key) ) {
$key = urldecode($key);
if(is_array($value)) {
$c = '';
$optstr .= esc_html($key) . ' : ';
foreach($value as $v) {
$optstr .= $c.nl2br(esc_html(urldecode($v)));
$c = ', ';
}
$optstr .= "<br />\n";
} else {
$optstr .= esc_html($key) . ' : ' . nl2br(esc_html(urldecode($value))) . "<br />\n";
}
}
}
$row .= apply_filters( 'usces_filter_option_cart', $optstr, $options);
}
$row .= apply_filters( 'usces_filter_option_info_cart', '', $cart_row, $args );
$row .= '</td>
<td class="aright">';
if( usces_is_gptekiyo($post_id, $sku_code, $quantity) ) {
$usces_gp = 1;
$Business_pack_mark = '<img src="' . get_template_directory_uri() . '/images/gp.gif" alt="' . __('Business package discount','usces') . '" /><br />';
$row .= apply_filters('usces_filter_itemGpExp_cart_mark', $Business_pack_mark);
}
$row .= usces_crform($skuPrice, true, false, 'return') . '
</td>
<td>';
$row_quant = '<input name="quant[' . $i . '][' . $post_id . '][' . $sku . ']" class="quantity" type="text" value="' . esc_attr($cart_row['quantity']) . '" />';
$row .= apply_filters( 'usces_filter_cart_rows_quant', $row_quant, $args );
$row .= '</td>
<td class="aright">' . usces_crform(($skuPrice * $cart_row['quantity']), true, false, 'return') . '</td>
<td>';
foreach($options as $key => $value){
if(is_array($value)) {
foreach($value as $v) {
$row .= '<input name="itemOption[' . $i . '][' . $post_id . '][' . $sku . '][' . $key . '][' . $v . ']" type="hidden" value="' . $v . '" />';
}
} else {
$row .= '<input name="itemOption[' . $i . '][' . $post_id . '][' . $sku . '][' . $key . ']" type="hidden" value="' . $value . '" />';
}
}
$row .= '<input name="itemRestriction[' . $i . ']" type="hidden" value="' . $itemRestriction . '" />
<input name="stockid[' . $i . ']" type="hidden" value="' . $stockid . '" />
<input name="itempostid[' . $i . ']" type="hidden" value="' . $post_id . '" />
<input name="itemsku[' . $i . ']" type="hidden" value="' . $sku . '" />
<input name="skuPrice[' . $i . '][' . $post_id . '][' . $sku . ']" type="hidden" value="' . esc_attr($skuPrice) . '" />
<input name="advance[' . $i . '][' . $post_id . '][' . $sku . ']" type="hidden" value="' . esc_attr($advance) . '" />
<input name="delButton[' . $i . '][' . $post_id . '][' . $sku . ']" class="delButton" type="submit" value="×" />
</td>
</tr>';
return $row;
}
add_filter('usces_filter_cart_row', 'my_filter_cart_row', 10, 3);
/**
* confirmation _filter
*/
function my_filter_confirm_row($row, $cart, $materials){
extract($materials);
$row = '';
if (empty($options)) {
$optstr = '';
$options = array();
}
$row .= '<tr>
<td>';
$cart_thumbnail = wp_get_attachment_image( $pictid, array(60, 60), true );
$row .= apply_filters('usces_filter_cart_thumbnail', $cart_thumbnail, $post_id, $pictid, $i, $cart_row);
$row .= '</td><td class="aleft">' . $cartItemName . '<br />';
if( is_array($options) && count($options) > 0 ){
$optstr = '';
foreach($options as $key => $value){
if( !empty($key) ) {
$key = urldecode($key);
if(is_array($value)) {
$c = '';
$optstr .= esc_html($key) . ' : ';
foreach($value as $v) {
$optstr .= $c.nl2br(esc_html(urldecode($v)));
$c = ', ';
}
$optstr .= "<br />\n";
} else {
$optstr .= esc_html($key) . ' : ' . nl2br(esc_html(urldecode($value))) . "<br />\n";
}
}
}
$row .= apply_filters( 'usces_filter_option_confirm', $optstr, $options);
}
$row .= '</td>
<td class="aright">' . usces_crform($skuPrice, true, false, 'return') . '</td>
<td>' . $cart_row['quantity'] . '</td>
<td class="aright">' . usces_crform(($skuPrice * $cart_row['quantity']), true, false, 'return') . '</td>
</tr>';
return $row;
}
add_filter('usces_filter_confirm_row', 'my_filter_confirm_row', 10, 3);
/**
* zipcode_filter
*/
function my_after_zipcode($after_zipcode){
$after_zipcode = 'ハイフン無し可';
return $after_zipcode;
}
add_filter('usces_filter_after_zipcode', 'my_after_zipcode', 10, 3);
/**
* loginout_btn
*/
function usces_loginout_btn( $out = '') {
global $usces;
if ( !$usces->is_member_logged_in() )
$res = '<a href="' . apply_filters('usces_filter_login_uri', USCES_LOGIN_URL) . '" class="usces_login_a" title="ログイン"><i class="fa fa-sign-in"></i><span class="loginout">Login</span></a>';
else
$res = '<a href="' . apply_filters('usces_filter_logout_uri', USCES_LOGOUT_URL) . '" class="usces_logout_a" title="ログアウト"><i class="fa fa-sign-out"></i><span class="loginout">Logout</span></a>';
if( $out == 'return' ){
return $res;
}else{
echo $res;
}
}
/**
* mobilefilter.
*/
function is_mymobile()
{
$ua = $_SERVER['HTTP_USER_AGENT'];
if(
strpos($ua, 'iPhone')!== false||
strpos($ua, 'iPod')!== false||
strpos($ua, 'BlackBerry')!== false||
strpos($ua, 'Windows')!== false&&strpos($ua, 'Phone')!== false||
strpos($ua, 'Android')=== false&&strpos($ua, 'Firefox')!== false&&strpos($ua, 'Mobile')!== false||
strpos($ua, 'Android')!== false&&strpos($ua, 'Mobile')!== false
)
{
return true;
}
else
{
return false;
}
}
/**
* imgWidget.
*/
class My_Widget extends WP_Widget {
function __construct() {
$widget_ops = array('description' => '高画質切り替えスイッチ');
parent::__construct(
false,
'高画質ボタン',
$widget_ops
);
}
function widget($args, $instance) {
?>
<div class="himgs" id="imgswitch"><a>高画質にする</a></div>
<div class="himgs" id="imgswitch0ff"><a>高画質にしない</a></div>
<?php
}
function update($new_instance, $old_instance) {
return $new_instance;
}
function form($instance) {
}
}
add_action('widgets_init',create_function('', 'return register_widget("My_Widget");'));
/**
* simple_sitemap
*/
function simple_sitemap(){
global $wpdb;
$args = array('depth' => 0,
'show_date' => NULL,
'date_format' => get_option('date_format'),
'child_of' => 0,
'exclude' => NULL,
'include' => NULL,
'title_li' => '<span class="subheader">固定ページの一覧</span>',
'echo' => 1,
'authors' => NULL,
'sort_column' => 'menu_order, post_title',
'link_before' => NULL,
'link_after' => NULL,
'exclude_tree' => NULL );
echo '<div id="sitemap"><ul>';
wp_list_pages($args);
echo '</ul>';
$args = array('show_option_all' => NULL,
'orderby' => 'name',
'order' => 'ASC',
'show_last_update' => 0,
'style' => 'list',
'show_count' => 0,
'hide_empty' => 1,
'use_desc_for_title' => 1,
'child_of' => 0,
'feed' => NULL,
'feed_type' => NULL,
'feed_image' => NULL,
'exclude' => NULL,
'exclude_tree' => NULL,
'include' => NULL,
'hierarchical' => true,
'title_li' => '<span class="subheader">記事カテゴリ</span>',
'number' => NULL,
'echo' => 1,
'depth' => 0,
'current_category' => 0,
'pad_counts' => 0,
'taxonomy' => 'category',
'walker' => 'Walker_Category' );
echo '<ul>';
echo wp_list_categories( $args );
echo '</ul>';
echo '</div>';
}
add_shortcode('sitemap', 'simple_sitemap');
//SSL error
if( function_exists('usces_the_item')){
if( $usces->options['use_ssl'] ){
add_action('init', 'usces_ob_start');
function usces_ob_start(){
global $usces;
if( $usces->use_ssl && ($usces->is_cart_or_member_page($_SERVER['REQUEST_URI']) || $usces->is_inquiry_page($_SERVER['REQUEST_URI'])) )
ob_start('usces_ob_callback');
}
if ( ! function_exists( 'usces_ob_callback' ) ) {
function usces_ob_callback($buffer){
global $usces;
$pattern = array(
'|(<[^<]*)href=\"'.get_option('siteurl').'([^>]*)\.css([^>]*>)|',
'|(<[^<]*)src=\"'.get_option('siteurl').'([^>]*>)|'
);
$replacement = array(
'${1}href="'.USCES_SSL_URL_ADMIN.'${2}.css${3}',
'${1}src="'.USCES_SSL_URL_ADMIN.'${2}'
);
$buffer = preg_replace($pattern, $replacement, $buffer);
return $buffer;
}
}
}
}
function lm_dequeue_footer_styles(){
if(function_exists('related_posts') && term_exists('item')){
wp_dequeue_style('yarppRelatedCss');
}
}
add_action('get_footer','lm_dequeue_footer_styles');
if(function_exists('usces_the_item') && term_exists('item')){
remove_action( 'wp_head', 'usces_action_ogp_meta');
}
/**
* related_items_Widget.
*/
class My_Widget1 extends WP_Widget {
function __construct() {
$widget_ops = array('description' => 'リフルズ関連記事');
parent::__construct(
false,
'リフルズ関連記事',
$widget_ops
);
}
function widget($args, $instance) {
?>
<?php
global $post;
$cat_now = get_the_category();
$nowid = get_the_ID();
$nowcat_id = array();
foreach($cat_now as $cat):
array_push( $nowcat_id, $cat -> cat_ID);
endforeach ;
$related_items = get_posts( array(
'post_type' => 'post',
'category__in' => $nowcat_id,
'posts_per_page' => '6',
'exclude' => $nowid,
'orderby' => 'rand'
)); ?>
<?php if ( $related_items ) : ?>
<h3 class="relatedneme"><i class="fa fa-wordpress"></i>関連記事</h3>
<ul class="related-list">
<?php foreach( $related_items as $post ): setup_postdata( $post ); ?>
<li>
<a href="<?php the_permalink(); ?>">
<?php if( has_post_thumbnail()) : ?>
<?php
$image_id = get_post_thumbnail_id();
$image_url = wp_get_attachment_image_src($image_id, 'medium');
?>
<i class="related-box fa fa-camera-retro fa-2x" style="background-image:url(<?php echo $image_url[0]; ?>);"></i>
<?php else: ?>
<i class="fa fa-wordpress"></i>
<?php endif; ?>
<h2><?php the_title() ; ?></h2>
</a>
</li>
<?php endforeach; wp_reset_postdata(); ?>
</ul>
<?php endif; ?>
<?php
}
function update($new_instance, $old_instance) {
return $new_instance;
}
function form($instance) {
}
}
add_action('widgets_init',create_function('', 'return register_widget("My_Widget1");'));
/**
* RecommendsItem_Widget.
*/
class My_Widget2 extends WP_Widget {
function __construct() {
$widget_ops = array('description' => 'リフルズ商品ウィジェット');
parent::__construct(
false,
'リフルズ商品ウィジェット',
$widget_ops
);
}
function widget($args, $instance) {
?>
<h4 class="widget-title">Recommends Item</h4>
<ul class="related-list">
<?php $recommend_items = get_posts( array(
'post_type' => 'post',
'category_name' => 'item',
'posts_per_page' => '5',
'orderby' => 'rand',
'suppress_filters' => false,
'meta_query' => array(
array(
'key' => '_isku_',
'value' => '"stocknum";s:1:"0"',
'compare' => 'NOT LIKE',
)
)
)); ?>
<?php foreach( $recommend_items as $post ): ?>
<li>
<a href="<?php echo get_permalink( $post->ID ); ?>">
<?php global $usces;
$post_id = $post->ID;
$code = get_post_meta($post_id, '_itemCode', true);
$pictid = (int)$usces->get_mainpictid($code);
$image_url = wp_get_attachment_image_src( $pictid,array(80,80) ); ?>
<i class="related-box fa fa-camera-retro fa-2x" style="height: 80px; background-image:url(<?php echo $image_url[0]; ?>);"></i>
<h2><?php echo get_the_title( $post->ID ); ?></h2>
</a>
</li>
<?php endforeach; wp_reset_postdata(); ?>
</ul>
<?php
}
function update($new_instance, $old_instance) {
return $new_instance;
}
function form($instance) {
}
}
add_action('widgets_init',create_function('', 'return register_widget("My_Widget2");'));
/**
* first_img.
*/
function catch_that_image() {
global $post, $posts;
$first_img = '';
ob_start();
ob_end_clean();
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
$first_img = $matches [1] [0];
if(empty($first_img)){
$first_img = get_template_directory_uri() .'/wordpresslogo.png';
}
return $first_img;
}
/**
* hfeedfilter.
*/
function celtisone_post_classes( $classes ) {
global $post;
if ( 'post' != get_post_type($post) or in_category('item') ) {
$idx = array_search('hentry', $classes);
if($idx !== false)
unset($classes[$idx]);
}
return $classes;
}
add_filter( 'post_class', 'celtisone_post_classes' );
/**
* lightboxfunc.
*/
function lightbox_auto($content) {
global $post;
$pattern = "/(<a(?![^>]*?rel=['\"]lightbox.*)[^>]*?href=['\"][^'\"]+?\.(?:bmp|gif|jpg|jpeg|png)(\?\S{0,}){0,1}['\"][^\>]*)>/i";
$replacement = '$1 data-lightbox="lightbox['.$post->ID.']">';
$content = preg_replace($pattern, $replacement, $content);
return $content;
}
add_filter('the_content', 'lightbox_auto');