- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 Wordpress stack exchange 上也有这个问题,但运气不好。因此,由于我的解决方案可能涉及我对 php 和 css 进行硬编码,因此最好将其放在此处。
我正在使用“Flex Slider”插件——它在我的 Wordpress 3.2 网站上的“WP rotator”插件之上运行。我已经很好地实现了它,并开始考虑插入我的内容 - 但我需要在 slider 顶部添加一个标题。正如 Web 上的大多数 slider 所示,在该工具的非 Wordpress 插件的文档中,它建议我可以做类似的事情;
<div class="flex-container">
<div class="flexslider">
<ul class="slides">
<li>
<img src="slide1.jpg" />
<p class="flex-caption">Captions and cupcakes. Winning combination.</p>
</li>
<li>
<img src="slide2.jpg" />
<p class="flex-caption">This image is wrapped in a link!</p>
</li>
<li>
<img src="slide3.jpg" />
</li>
</ul>
</div>
</div>
问题是;使用 Wordpress 插件版本时,我找不到可以在其中工作的标记。
这是插件目录中唯一的非 css 非 js 文件,所以我想我必须在那里工作。
我已尝试插入上面建议的非 Wordpress 标记,但不确定将其插入何处,因为到目前为止我的尝试已将其破坏。
<?php
/*
Plugin Name: Flex Slider for WP Rotator
Plugin URI: http://wordpress.org/extend/plugins/flex-slider-for-wp-rotator/
Description: Turns WP Rotator into FlexSlider, a fully responsive jQuery slider.
Version: 1.1
Author: Bill Erickson
Author URI: http://www.billerickson.net/blog/wordpress-guide
*/
class BE_Flex_Slider {
var $instance;
function __construct() {
$this->instance =& $this;
register_activation_hook( __FILE__, array( $this, 'activation_hook' ) );
add_action( 'plugins_loaded', array( $this, 'init' ) );
}
/**
* Activation Hook
* Confirm WP Rotator is currently active
*/
function activation_hook() {
if( !function_exists( 'wp_rotator_option' ) ) {
deactivate_plugins( plugin_basename( __FILE__ ) );
wp_die( sprintf( __( 'Sorry, you can’t activate unless you have installed <a href="%s">WP Rotator</a>', 'flex-slider-for-wp-rotator'), 'http://wordpress.org/extend/plugins/wp-rotator/' ) );
}
}
function init() {
// Remove original scripts and styles
remove_action('wp_head','wp_rotator_css');
remove_action('admin_head','wp_rotator_css');
remove_action('wp_head','wp_rotator_javascript');
remove_action('admin_head','wp_rotator_javascript');
remove_action('init','wp_rotator_add_jquery');
remove_action('admin_init','wp_rotator_add_jquery');
// Enqueue Scripts and Styles
add_action( 'init', array( $this, 'enqueue_scripts_and_styles' ) );
// Remove original outer markup
remove_action( 'wp_rotator', 'wp_rotator' );
// Add new markup
add_action( 'wp_rotator', array( $this, 'flex_slider' ) );
remove_shortcode( 'wp_rotator' );
add_shortcode( 'wp_rotator', array( $this, 'flex_slider_markup' ) );
}
function enqueue_scripts_and_styles() {
// Use this filter to limit where the scripts are enqueued.
$show = apply_filters( 'be_flex_slider_show_scripts', true );
if ( true === $show ) {
wp_enqueue_style( 'flex-slider', plugins_url( 'flexslider.css', __FILE__ ) );
wp_enqueue_script( 'jquery ');
wp_enqueue_script( 'flex-slider', plugins_url( 'jquery.flexslider-min.js', __FILE__ ), array( 'jquery' ) );
add_action( 'wp_head', array( $this, 'flex_slider_settings' ) );
}
}
function flex_slider_settings() {
?>
<script type="text/javascript" charset="utf-8">
jQuery(window).load(function() {
jQuery('.flexslider').flexslider({
<?php
$flex_settings = array(
'animation' => '"' . wp_rotator_option( 'animate_style' ) . '"',
'slideshowSpeed' => wp_rotator_option( 'rest_ms' ),
'animationDuration' => wp_rotator_option( 'animate_ms' ),
);
$flex_slide_settings = array(
'controlsContainer' => '".flex-container"'
);
if( 'slide' == wp_rotator_option( 'animate_style' ) )
$flex_settings = array_merge( $flex_settings, $flex_slide_settings );
$flex_settings = apply_filters( 'be_flex_slider_settings', $flex_settings );
foreach ( $flex_settings as $field => $value ) {
echo $field . ': ' . $value . ', ';
}
?>
});
});
</script>
<?php
}
function flex_slider_markup() {
$output = '';
if( 'slide' == wp_rotator_option( 'animate_style' ) )
$output .= '<div class="flex-container">';
$output .= '<div class="flexslider"><ul class="slides">';
$loop = new WP_Query( esc_attr( wp_rotator_option('query_vars') ) );
while ( $loop->have_posts() ): $loop->the_post(); global $post;
$url = esc_url ( get_post_meta( $post->ID, 'wp_rotator_url', true ) );
if ( empty( $url ) ) $url = get_permalink($post->ID);
$show_info = esc_attr( get_post_meta( $post->ID, 'wp_rotator_show_info', true ) );
if ( true == $show_info ) {
$title = get_the_title();
if ( get_the_excerpt() ) $excerpt = get_the_excerpt();
else $excerpt = '';
$caption = $title . ' <span class="excerpt">' . $excerpt . '</span>';
$info = '<p class="flex-caption">' . apply_filters( 'be_flex_slider_caption', $caption, $title, $excerpt ) . '</p>';
} else {
$info = '';
}
$image = wp_get_attachment_image_src( get_post_thumbnail_id(), 'wp_rotator' );
$slide = '<li><a href="' . $url . '"><img src="' . $image[0] . '" /></a>' . $info . '</li>';
$output .= apply_filters( 'be_flex_slider_slide', $slide );
endwhile; wp_reset_query();
$output .= '</ul></div>';
if( 'slide' == wp_rotator_option( 'animate_style' ) )
$output .= '</div>';
return $output;
}
function flex_slider() {
echo $this->flex_slider_markup();
}
}
new BE_Flex_Slider;
?>
我已经联系了插件开发人员,他没有回应,所以我认为他不会支持我的问题 - 所以我只能手动编码。
http://wordpress.org/extend/plugins/wp-rotator/
http://flex.madebymufffin.com/
http://wordpress.org/extend/plugins/flex-slider-for-wp-rotator/
谢谢指点!
最佳答案
看起来标题会自动添加到 slider ,只要您将帖子设置为显示旋转器信息(wp_rotator_show_info
...可能在插件设置页面或您的个人帖子页面上)。自动标题由帖子的标题和摘录组成。这是上面插件中的关键部分:
$show_info = esc_attr( get_post_meta( $post->ID, 'wp_rotator_show_info', true ) );
if ( true == $show_info ) {
$title = get_the_title();
if ( get_the_excerpt() ) $excerpt = get_the_excerpt();
else $excerpt = '';
$caption = $title . ' <span class="excerpt">' . $excerpt . '</span>';
$info = '<p class="flex-caption">' . apply_filters( 'be_flex_slider_caption', $caption, $title, $excerpt ) . '</p>';
} else {
$info = '';
}
更新:如果您希望无论如何都显示标题,请将上面的部分替换为:
$title = get_the_title();
if ( get_the_excerpt() ) $excerpt = get_the_excerpt();
else $excerpt = '';
$caption = $title . ' <span class="excerpt">' . $excerpt . '</span>';
$info = '<p class="flex-caption">' . apply_filters( 'be_flex_slider_caption', $caption, $title, $excerpt ) . '</p>';
请注意,我只是删除了检查 wp_rotator_show_info 的部分。
关于php - 添加字幕区到 'Flexslider Plug-in',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8041302/
我正在使用 Plug,我想了解一下。 我的代码如下所示: defmodule Numerino.Plug do use Plug.Router use Plug.Debugger plug
我使用开发人员工具包为本地 Dynamics CRM 2011 开发了一个插件。我没有更新默认代码,只是简单地部署了它。但我收到异常(exception)。我不知道它有什么问题。以下是异常详细信息。
如果我启动我的 phoenix 应用程序的一个实例并用请求点击它,我的插件将适本地停止。但是,在测试环境中做同样的事情,停止并不会阻止下游的插件被调用,这会导致我的测试失败。我认为问题可能来自我在测试
我是第一次使用 ALSA,我看到了错误: pcm_plug.c:67: snd_pcm_plug_close: Assertion `plug->gen.slave == plug->req_slav
在我的一个 Controller 中,我有以下代码(摘录): case HTTPoison.get("https://*****.zendesk.com/api/v2/users/search.jso
为了应对最近的安全漏洞,Oracle 如何改变用户的 Java 插件启动体验? 详情 JRE 1.7 Vulnerability SO 的问答。 Oracle Security Alert for C
我有一个路由器模块,可以将请求转发到其他路由器。在这个路由器中,我有一个由 plug(:match) 和 plug(:dispatch) 组成的管道。 defmodule Example.Router
安装 absinthe_plug 后出现以下错误: = Compilation error in file lib/kerrigan_api_web/router.ex == ** (Undefine
许多插件通过 访问其公共(public)映射界面。 map 。然后,用户可以将这些映射用作自己映射的 Hook ,例如:nmap fu fooPluginUnlinkRootDir . 最近我遇到了
我想用 Plug.Upload在我的一个路由器中,上面没有任何库或框架,但这里有官方文档:https://hexdocs.pm/plug/Plug.Upload.html不提供与其他插头不同的示例,例
有人知道自动抓取歌曲的方法吗? 我想制作一个歌曲播放列表,以便我可以制作一个播放列表并收听它们。我尝试过制作一个脚本,但它有点有效,它打开了菜单,但没有将其添加到播放列表中。这是我的代码: funct
我在使用一个简单的示例时遇到了一些困难。我没有使用 Phoenix FWIW,只需插入 defmodule Unauthorized do defexception message: "not a
作为 Elixir 和 Web 域的新手(没有 Web 框架经验),我想知道什么是 Plug?据我了解,Cowboy 是一个网络服务器(虽然是在 Erlang 中,而不是 Elixir),而 Phoe
我最近发现了一个 vim 插件,使用了名为 的东西。 。例如有一个命令 abc_def我想执行它。 我已经尝试过类似 :abc_def 的一切和类似的。什么都没起作用。和:help 没有提供任何信息
我正在尝试使用 jQuery 插件在我的应用程序中实现拖放功能,如下所述:http://farhadi.ir/projects/html5sortable/无论如何,我只能拖动列表对象,而不能将它们放
我即将开始开发基于“插件”架构的桌面应用程序 (WPF),并打算使用 MEF(及其 DirectoryCatalog)来发现和加载插件程序集。我们将开发许多插件,因此将它们保留在单独的 VS 解决方案
我已经实现了一个打印结构/类的内存布局的函数。我希望此功能以这种方式“插入”到流中: BaseStruct1 struct1; cout << "The struct1 object is:" <<
我正在尝试为 vim-plug 制作一个插件.目前我不确定如何加载本地目录。我已经在我的根目录中运行了: mkdir vim-test cd vim-test git init mkdir synta
我正在尝试测试一种接收 Plug.Conn 类型连接的方法但我找不到使用 Plug.Conn API 使用请求参数初始化连接的方法。 例如: test "put request params", %{
是否可以在分块状态下保持连接打开几秒钟? 在请求中,我创建了几个进程,假设需要 5 秒才能完成,之后我想通过 block 向客户端发送响应,但连接已关闭 我正在用 postman 测试这个,我有这个标
我是一名优秀的程序员,十分优秀!