Skip to content

Instantly share code, notes, and snippets.

@marcosnakamine
Created March 28, 2017 19:55
Show Gist options
  • Save marcosnakamine/52f1d5c263daf8bdf91bfaa0e4cdd325 to your computer and use it in GitHub Desktop.
Save marcosnakamine/52f1d5c263daf8bdf91bfaa0e4cdd325 to your computer and use it in GitHub Desktop.
WordPress - Open fancybox on page with gallery and iframe in others
<ul>
<?php wp_nav_menu(); ?>
</ul>
<div class="hidden-gallery">
<?php
function get_image_gallery_src( $post_id ) {
$gallery = get_post_gallery( $post_id, false );
$gallery_id = explode( ',', $gallery['ids'] );
$result = array();
foreach ( $gallery_id as $key => $value ) {
$img = wp_get_attachment_image_src( $value, 'full' );
array_push( $result, array(
'title' => get_the_title( $value ),
'src' => $img[0]
));
}
return $result;
}
$pages = get_pages(); // PEGA TODAS AS PÁGINAS
foreach ($pages as $key => $value) {
$gallery = get_image_gallery_src( $value->ID );
if ( $gallery[0]['src'] != '' ) {
foreach ( $gallery as $key2 => $value2 ) {
// CARREGA A GALERIA
?><a rel="galeria-<?php echo $value->ID ?>" class="galeria-<?php echo $value->ID ?> galeria" href="<?php echo $value2['src'] ?>"></a><?php
}
// ATIVA O FANCYBOX PARA O LINK QUE CONTÉM ALGUMA GALERIA
?>
<script>
$(function () {
$('.menu li.page-item-<?php echo $value->ID ?> a').attr({'href':'#'});
$('.menu li.page-item-<?php echo $value->ID ?> a').on('click',function () {
$('.galeria-<?php echo $value->ID ?>:eq(0)').trigger('click');
})
})
</script>
<?php
} else {
// ATIVA O FANCYBOX IFRAME SOMENTE NNAS PÁGINAS QUE NÃO TIVER GALERIA
?>
<script>
$(function() {
$('.menu li.page-item-<?php echo $value->ID ?> a').fancybox({
type: 'iframe'
});
})
</script>
<?php
}
}
?>
<script>
$(function() {
$('.galeria').fancybox({
helpers:{
thumbs:{}
}
});
})
</script>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment