我有一個WordPress站點,需要使用刷卡來顯示頁面,我選擇使用Jquery Mobile,並且它能夠正常工作。現在,我們有2種語言,使用wpml插件。我的Swipe代碼運行良好,除了當我們使用更改語言按鈕刷卡失敗。Jquery Mobile有2組頁面
有關問題的詳細信息。
我們在我們的網站上只有3個純文本頁面,使用2種語言。而在Footer我們有鏈接改變語言。此外,客戶不喜歡有Ajax頁面加載,所以我做的是創建三個Div data-role=page
並把data-next
,data-prev
作爲#div-$postid
。所以導航工作絕對正常。我從data-role=page
以外的頁腳。
現在,當我單擊頁腳中的更改按鈕時,它將加載英文頁面[我使用Fiddler看到],然後從服務器中取第一個data-role=page
,並替換/滑動其內容。但是,由於它只選擇第一個數據角色,所有其他英文頁面都不會在HTML中獲得[它只是更新DOM並且不會導航到英文版本]。所以滑動失敗,因爲其他英文網頁不是在dom中。
此外,頁腳不會改變,所以我想要的是:我們可以簡單地強制鏈接導航而不是滑動方式嗎? Jquery Mobile在所有A標籤上強制刷卡,我不想在data-role=page
以外的地方刷卡。
希望我有道理。這裏
編輯是代碼:[不知道如果這個代碼將在所有幫助]
<?php
get_header();
global $post;
$args = array('post_type' => 'mobile_slide','showposts' => '-1', "order" => "DESC");
$the_query = new WP_Query($args);
if($the_query->have_posts()){
while($the_query->have_posts()) { $the_query->the_post();
$prev =get_previous_post();
$next =get_next_post();
if($prev) {
$prev = "#page-" . $prev->ID; //get_permalink($prev->ID);
} else {
$prev='';
}
if($next) {
$next = "#page-".$next->ID; //get_permalink($next->ID);
} else {
$next='';
}
if (has_post_thumbnail($post->ID)) {
$image = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'slider_image'); ?>
<div id="page-<?php echo $post->ID; ?>" data-dom-cache="true" data-transition="slide" class="page" data-role="page" data-prev="<?php echo $prev; ?>" data-next="<?php echo $next; ?>" style="background-image:url('<?php echo $image[0]; ?>'); background-position:center center; background-color:#000; background-repeat:no-repeat; ">
<?php } else { ?>
<div id="page-<?php echo $post->ID; ?>" data-dom-cache="true" data-transition="slide" class="page" data-role="page" data-prev="<?php echo $prev; ?>" data-next="<?php echo $next; ?>">
<?php } ?>
<div class="post_box">
<h2><blockquote><?php the_title(); ?></blockquote></h2>
<div class="post_entry">
<?php the_content(); ?>
</div>
</div><!-- post_box -->
</div>
<?php }
} ?>
<?php get_footer(); ?>
這是我的全部,除了get_footer使用其中的李變化基於語言變量的UI基於李名單,爲任何一種語言顯示不同的圖像。
1)我添加了一個「noswipe」類標籤,所以我可以指它在jQuery的
2)我想補充以下內容:
請您添加代碼或重現上jsfiddle.net問題。 – Omar
如果您在更改語言後輸入例如site.net/#english,它會更改爲該頁面嗎?因爲頁面在DOM中。 – Omar
當我單擊具有類似site.com/en網址的英語頁腳鏈接時,它首先顯示Data-role =頁面內容,而提琴手顯示完整頁面下載,但是當我在瀏覽器上查看源代碼時,它僅顯示一個數據 - 角色僅在其他語言的html中合併。 –