Commit 5301c4a6 authored by agnez's avatar agnez

trois producteurs suite, encore wip

parent c7f91956
<?php
// array tout les prods
$query_lesprods = new WP_Query( array(
'post_type' => 'producer',
'post_status' => 'publish',
'orderby' => 'id',
'order' => 'ASC',
'posts_per_page' => -1
));
$prods = $query_lesprods->get_posts();
$lesproducteurs = array();
foreach( $prods as $post ) {
$lesproducteurs[] = array(
'id' => $post->ID,
'title' => $post->post_title,
'thumb' => htmlentities(get_the_post_thumbnail( $post->ID )),
'content' => $post->post_content,
'terms' => $post->post_term
);
}
// json encode array. doit être appelé avant gasap_trois_prod.js.. voir comment assurer ?>
<script type="text/javascript">
var lesproducteurs = <?php echo json_encode( $lesproducteurs ); ?>;
</script>
<?php
add_action( 'wp_ajax_gasap_deuxprods', 'gasap_2prods' );
add_action( 'wp_ajax_nopriv_gasap_deuxprods', 'gasap_2prods' );
function gasap_2prods() {
//deux producteurs - teaser ?>
<div class="uk-grid">
<div class="uk-width-1 uk-width-medium-1-2">
img ici
<h2 id="deuxprods_titre1"></h2>
<div id="deuxprods_terms1">terms producertype ici</div>
<a class="uk-button uk-button-success clickme1" href="#3producteurs_test" data-uk-smooth-scroll><?php esc_html_e( 'Discover', 'beans_gasap' ); ?></a>
<span class="edit-link">edit post link ? comment ? <?php esc_html_e( 'Edit producer', 'beans_gasap' ); ?></span>
</div>
<div class="uk-width-1 uk-width-medium-1-2"><?php
if ( has_post_thumbnail() ) { the_post_thumbnail('medium2'); } ?>
<h2 id="deuxprods_titre2"></h2>
<div>get_the_term_list( get_the_ID(), 'producertype'</div>
<a class="uk-button uk-button-success clickme2" href="#3producteurs_test" data-uk-smooth-scroll><?php esc_html_e( 'Discover', 'beans_gasap' ); ?></a>
<span class="edit-link">edit post link ? comment ? <?php esc_html_e( 'Edit producer', 'beans_gasap' ); ?></span>
</div>
</div>
<?php
//fiche producteur ?>
<div id="fiche_producteur" class="uk-block">
<div class="uk-grid">
<div class="uk-width-1 uk-width-medium-1-2">
the_post_thumbnail ici
</div>
<div class="uk-width-1 uk-width-medium-1-2">
<h2 id="ficheprod_titre">the_title</h2>
<div id="ficheprod_content"></div>
<span class="edit-link">edit post link ? comment ? <?php esc_html_e( 'Edit producer', 'beans_gasap' ); ?></span>
</div>
</div>
</div>
<?php
return;
die();
}?>
<section id="3producteurs_test" class="uk-block">
<div class="largeur1">
<?php gasap_2prods()?>
</div>
</section>
\ No newline at end of file
jQuery( document ).ready(function()
{
function get_producteurs() {
return lesproducteurs;
}
var arr_ids_deuxprod=[];
var fiche_prod_id;
var index_id1_deuxprod;
var index_id2_deuxprod;
var deuxprod_titre1 = jQuery( "#deuxprods_titre1" );
var deuxprods_terms1 = jQuery( "#deuxprods_terms1" );
var deuxprod_titre2 = jQuery( "#deuxprods_titre2" );
var ficheprod_titre = jQuery( "#ficheprod_titre" );
var ficheprod_content = jQuery( "#ficheprod_content" );
// faire une fonction ici et l'appeller pour clickme 1 et 2
jQuery( '.clickme1' || '.clickme2' ).on('click', function(){
console.log(this);
var fiche_prod_id_temp = arr_ids_deuxprod[0];
arr_ids_deuxprod.push(fiche_prod_id_temp);
arr_ids_deuxprod = choix_prods(2);
fiche_prod_id = fiche_prod_id_temp;
deuxprod_titre1.html(lesproducteurs[arr_ids_deuxprod[0]].title);
deuxprod_titre2.html(lesproducteurs[arr_ids_deuxprod[1]].title);
ficheprod_titre.html(lesproducteurs[fiche_prod_id].title);
ficheprod_content.html(lesproducteurs[fiche_prod_id].content);
//console.log("fiche_prod_id: " + fiche_prod_id);
//console.log("arr_ids_deuxprod: "+arr_ids_deuxprod);
});
// shuffle array http://stackoverflow.com/questions/2450954/how-to-randomize-shuffle-a-javascript-array
function choix_prods(count) {
var arr_ids_deuxprod_temp=[];
var bln_bon;
for (var i = 0; i< count; i++) {
bln_bon=false;
while (bln_bon == false) {
randomId = Math.floor(Math.random() * lesproducteurs.length);
var bln_bon2 = true;
for (var j = 0; j < arr_ids_deuxprod.length; j++) {
if (arr_ids_deuxprod[j] == randomId) {
bln_bon2 = false;
break;
}
}
function get_producteurs() {
return lesproducteurs;
}
if (fiche_prod_id && fiche_prod_id == randomId) {
bln_bon2 = false;
}
var arr_ids_deuxprod=[];
var fiche_prod_id;
/*
* 2 + 1 producteurs au hasard, sans doublons et sans répéter les précédents
*/
function choix_prods(count) {
var arr_ids_deuxprod_temp=[];
var bln_bon;
for (var i = 0; i< count; i++) {
bln_bon=false;
while (bln_bon == false) {
randomId = Math.floor(Math.random() * lesproducteurs.length);
var bln_bon2 = true;
for (var j = 0; j < arr_ids_deuxprod.length; j++) {
if (arr_ids_deuxprod[j] == randomId) {
bln_bon2 = false;
break;
}
}
for (var j = 0; j < arr_ids_deuxprod_temp.length; j++) {
if (arr_ids_deuxprod_temp[j] == randomId) {
if (fiche_prod_id && fiche_prod_id == randomId) {
bln_bon2 = false;
break;
}
}
if (bln_bon2 == true) {
bln_bon=true;
arr_ids_deuxprod_temp.push(randomId);
for (var j = 0; j < arr_ids_deuxprod_temp.length; j++) {
if (arr_ids_deuxprod_temp[j] == randomId) {
bln_bon2 = false;
break;
}
}
if (bln_bon2 == true) {
bln_bon=true;
arr_ids_deuxprod_temp.push(randomId);
}
}
}
if (arr_ids_deuxprod_temp.length == 1) {
return arr_ids_deuxprod_temp[0]
} else {
return arr_ids_deuxprod_temp;
}
}
if (arr_ids_deuxprod_temp.length == 1) {
return arr_ids_deuxprod_temp[0]
} else {
return arr_ids_deuxprod_temp;
set_producteurs(0) //au 1er chargement de la page avant le click
function set_producteurs(index) {
if (arr_ids_deuxprod.length < 2) { //au 1er chargement de la page avant le click
arr_ids_deuxprod = choix_prods(2);
}
var fiche_prod_id_temp = arr_ids_deuxprod[index];
arr_ids_deuxprod.push(fiche_prod_id_temp);
arr_ids_deuxprod = choix_prods(2);
fiche_prod_id = fiche_prod_id_temp;
var deuxprod_titre1 = jQuery( "#deuxprods_titre1" );
var deuxprod_thumb1 = jQuery( "#deuxprods_thumb1" );
var deuxprod_thumb1src;
var deuxprods_terms1 = jQuery( "#deuxprods_terms1" );
var deuxprod_edit1 = jQuery( "#deuxprods_edit1" );
var deuxprod_titre2 = jQuery( "#deuxprods_titre2" );
var deuxprod_thumb2 = jQuery( "#deuxprods_thumb2" );
var deuxprod_thumb2src;
var deuxprods_terms2 = jQuery( "#deuxprods_terms2" );
var ficheprod_titre = jQuery( "#ficheprod_titre" );
var ficheprod_thumb = jQuery( "#ficheprod_thumb" );
var ficheprod_thumbsrc;
var ficheprod_content = jQuery( "#ficheprod_content" );
//prod1
deuxprod_titre1.html(lesproducteurs[arr_ids_deuxprod[0]].title);
deuxprods_terms1.html(lesproducteurs[arr_ids_deuxprod[0]].terms);
deuxprod_thumb1src=lesproducteurs[arr_ids_deuxprod[0]].thumb_medium;
deuxprod_thumb1.attr("src", deuxprod_thumb1src);
deuxprod_thumb1.attr("alt", lesproducteurs[arr_ids_deuxprod[0]].title);
//deuxprod_edit1.html( "<a "+(lesproducteurs[arr_ids_deuxprod[0]].edit)+">ggg edit</a>" );
//prod2
deuxprod_titre2.html(lesproducteurs[arr_ids_deuxprod[1]].title);
deuxprods_terms2.html(lesproducteurs[arr_ids_deuxprod[1]].terms);
deuxprod_thumb2src=lesproducteurs[arr_ids_deuxprod[1]].thumb_medium;
deuxprod_thumb2.attr("src", deuxprod_thumb2src);
//fiche prod
ficheprod_titre.html(lesproducteurs[fiche_prod_id].title);
var ficheprod_terms = jQuery( "#ficheprod_terms" ).html(lesproducteurs[fiche_prod_id].terms);
ficheprod_content.html(lesproducteurs[fiche_prod_id].content);
ficheprod_thumbsrc=lesproducteurs[fiche_prod_id].thumb;
ficheprod_thumb.attr("src", ficheprod_thumbsrc);
console.log("edit: "+(lesproducteurs[arr_ids_deuxprod[0]].edit));
console.log("thumb: "+(lesproducteurs[arr_ids_deuxprod[0]].thumb));
console.log("content: "+(lesproducteurs[fiche_prod_id].content));
}
}
/*au 1er chargement de la page avant le click*/
//console.log("arr_ids_deuxprod encore vide "+arr_ids_deuxprod);
fiche_prod_id = choix_prods(1);
arr_ids_deuxprod = choix_prods(2);
index_id1_deuxprod=arr_ids_deuxprod[0];
index_id2_deuxprod=arr_ids_deuxprod[1];
deuxprod_titre1.html(lesproducteurs[arr_ids_deuxprod[0]].title);
deuxprods_terms1.html(lesproducteurs[arr_ids_deuxprod[0]].terms);
deuxprod_titre2.html(lesproducteurs[arr_ids_deuxprod[1]].title);
ficheprod_titre.html(lesproducteurs[fiche_prod_id].title);
ficheprod_content.html(lesproducteurs[fiche_prod_id].content);
//console.log("fiche_prod_id: " + fiche_prod_id);
//console.log("arr_ids_deuxprod: "+arr_ids_deuxprod);
//console.log(index_id1_deuxprod);
//console.log(lesproducteurs[fiche_prod_id].title);
/*function set_producteurs(index, cat, value) {
lesproducteurs[index][cat] = value;
}*/
/*jQuery.post(
gasap_frontend_ajax.ajaxurl,
{action: 'gasap_2prods'})
.done(function(lesproducteurs){
//var test = get_producteurs();
//console.log(test[29].title);
//set_producteurs(0, "post_title", "trqlqlq");
console.log(lesproducteurs[0].title);
$('.thetitle').text(lesproducteurs[0].title);
}); */
});
jQuery( '#clickme1' ).on('click', function(e){
if (e.originalEvent != undefined) {
set_producteurs(0);
}
});
jQuery( '#clickme2' ).on('click', function(e){
if (e.originalEvent != undefined) {
set_producteurs(1);
}
});
});
\ No newline at end of file
<section id="3producteurs" class="uk-block">
<div class="largeur1">
<div class="uk-text-center"><?php
$producteurs_nourrissent = new WP_Query( array( 'post_type' => 'contentpiece','p' => 204) ); //FIX db entry
while($producteurs_nourrissent->have_posts()) : $producteurs_nourrissent->the_post(); ?>
<h2><?php the_title(); ?></h2>
<div><?php the_content(); ?></div>
<?php edit_post_link( esc_html__( 'Edit', 'beans_gasap' ), '<p class="edit-link">', '</p>' ); ?>
<?php endwhile;
wp_reset_postdata();?>
</div>
<?php
// array tout les prods
$query_lesprods = new WP_Query( array(
'post_type' => 'producer',
'post_status' => 'publish',
'orderby' => 'id',
'order' => 'ASC',
'posts_per_page' => -1
));
$prods = $query_lesprods->get_posts();
$lesproducteurs = array();
<?php
$do_not_duplicate = array();
$active_prod = ''; //gasap_get_activepost();
foreach( $prods as $post ) {
$terms = get_the_term_list( $post->ID, 'producertype', '', ', ' );
$terms = strip_tags( $terms );
$image_arr = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID),'full');
$image_url = $image_arr[0];
$image_medium2_arr = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID),'medium2');
$image_medium2_url = $image_arr[0];
$edit_link = get_edit_post_link($post->ID);
//deux producteurs
$short_producteurs = new WP_Query( array(
'post_type' => 'producer',
'orderby' => 'rand',
'posts_per_page' => '2',
'post__not_in' => array( $active_prod )
));
?><div class="uk-grid"><?php
while ( $short_producteurs->have_posts() ) : $short_producteurs->the_post(); ?>
$lesproducteurs[] = array(
'id' => $post->ID,
'title' => $post->post_title,
'content' => $post->post_content,
'terms' => $terms,
'thumb' => $image_url,
'thumb_medium' => $image_medium2_url,
'edit' => $edit_link
);
}
<div class="uk-width-1 uk-width-medium-1-2"><?php
if ( has_post_thumbnail() ) { the_post_thumbnail('medium2'); } ?>
<h2><?php echo get_the_title(); ?></h2>
<?php echo get_the_term_list( get_the_ID(), 'producertype', '<div>', ', ', '</div>' ); ?>
<a id="<?php echo get_the_ID(); ?>" class="uk-button uk-button-success clickid" href="#presentation_producteur" data-uk-smooth-scroll><?php esc_html_e( 'Discover', 'beans_gasap' ); ?></a>
<?php edit_post_link( esc_html__( 'Edit producer', 'beans_gasap' ), '<span class="edit-link">', '</span>' ); ?>
// json encode array. doit être appelé avant gasap_trois_prod.js.. voir comment assurer ?>
<script type="text/javascript">
var lesproducteurs = <?php echo json_encode( $lesproducteurs ); ?>;
</script>
<?php
add_action( 'wp_ajax_gasap_deuxprods', 'gasap_3prods' );
add_action( 'wp_ajax_nopriv_gasap_deuxprods', 'gasap_3prods' );
function gasap_3prods() {
//deux producteurs - teaser ?>
<div class="uk-grid">
<div class="uk-width-1 uk-width-medium-1-2">
<img id='deuxprods_thumb1' width="500" height="240" src="" class="attachment-medium2 size-medium2 wp-post-image" alt="" />
<h2 id="deuxprods_titre1"></h2>
<div id="deuxprods_terms1"></div>
<a class="uk-button uk-button-success" id="clickme1" href="#fiche_producteur" data-uk-smooth-scroll><?php esc_html_e( 'Discover', 'beans_gasap' ); ?></a>
<span id="deuxprods_edit1" class="edit-link"></span>
</div>
<?php $do_not_duplicate[] = get_the_ID();
endwhile;
wp_reset_postdata();
?></div><?php
// fiche producteur
if(get_query_var($active_prod) !== '') {
$fiche_producteur = new WP_Query( array( 'p' => $active_prod) );
} else {
$fiche_producteur = new WP_Query( array(
'post_type' => 'producer',
'orderby' => 'rand',
'posts_per_page' => 1,
'post__not_in' => $do_not_duplicate
));
}
while ( $fiche_producteur->have_posts() ) : $fiche_producteur->the_post(); ?>
<div id="presentation_producteur" class="uk-block">
<div class="uk-grid"><?php echo 'kkkkkkk'. $active_prod; ?>
<div class="uk-width-1 uk-width-medium-1-2">
<img id='deuxprods_thumb2' width="500" height="240" src="" class="attachment-medium2 size-medium2 wp-post-image" alt="" />
<h2 id="deuxprods_titre2"></h2>
<div id="deuxprods_terms2"></div>
<a class="uk-button uk-button-success" id="clickme2" href="#fiche_producteur" data-uk-smooth-scroll><?php esc_html_e( 'Discover', 'beans_gasap' ); ?></a>
<span id="deuxprods_edit2" class="edit-link"></span>
</div>
</div>
<?php //fiche producteur ?>
<div id="fiche_producteur" class="uk-block">
<div class="uk-grid">
<div class="uk-width-1 uk-width-medium-1-2">
<?php if ( has_post_thumbnail() ) { the_post_thumbnail(); } ?>
<img id="ficheprod_thumb" width="480" height="359" src="" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" srcset="" sizes="(max-width: 480px) 100vw, 480px" />
</div>
<div class="uk-width-1 uk-width-medium-1-2">
<h2><?php the_title(); ?></h2>
<?php the_content() ?>
<?php edit_post_link( esc_html__( 'Edit producer', 'beans_gasap' ), '<span class="edit-link">', '</span>' ); ?>
<h2 id="ficheprod_titre"></h2>
<div id="ficheprod_terms"></div>
<div id="ficheprod_content"></div>
<span id="ficheprod_edit" class="edit-link"></span>
</div>
</div>
</div><?php
$active_prod = get_the_ID();
endwhile;
wp_reset_postdata();?>
</div>
</section><?php
wp_reset_postdata();
\ No newline at end of file
</div>
<?php
return;
die();
}?>
<section id="3producteurs" class="uk-block">
<div class="largeur1">
<?php gasap_3prods()?>
</div>
</section>
\ No newline at end of file
......@@ -26,7 +26,7 @@ function gasap_enqueue_uikit_assets() {
// Enqueue uikit overwrite theme folder
beans_uikit_enqueue_theme( 'beans_gasap', get_stylesheet_directory_uri() . '/assets/less/uikit' );
// Add the theme style as a uikit fragment to have access to all the variables
beans_uikit_enqueue_components( array( 'switcher', 'modal', 'tab', 'overlay', 'cover' ) );
beans_uikit_enqueue_components( array( 'switcher', 'modal', 'tab', 'overlay', 'cover', 'smooth-scroll' ) );
beans_uikit_enqueue_components( array( 'slider', 'slideshow', 'grid', 'accordion' ), 'add-ons' );
beans_compiler_add_fragment( 'uikit', get_stylesheet_directory_uri() . '/assets/less/style.less', 'less' );
beans_compiler_add_fragment( 'uikit', get_stylesheet_directory_uri() . '/assets/less/gasap.less', 'less' );
......
......@@ -76,7 +76,6 @@ function add_page_le_gasap_content_pieces() {
</div></section>
<?php
include (get_stylesheet_directory() . '/assets/template_parts/three_steps.php');// Comment devenir membre en 3 étapes ?
include (get_stylesheet_directory() . '/assets/helpers/trois_random_prods.php');
include (get_stylesheet_directory() . '/assets/template_parts/three_producers.php');
include (get_stylesheet_directory() . '/assets/template_parts/news_slider.php');
include (get_stylesheet_directory() . '/assets/template_parts/latest_news.php');
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment