Skip to content

Instantly share code, notes, and snippets.

@phucdohong96
Last active November 4, 2017 04:53
Show Gist options
  • Save phucdohong96/d0c55920cc94ac4097b0fc28ef7ffd94 to your computer and use it in GitHub Desktop.
Save phucdohong96/d0c55920cc94ac4097b0fc28ef7ffd94 to your computer and use it in GitHub Desktop.
Shortcode Category Menu With Post Object ACF
<?php
function custom_taxonomer(){
$wp_post_types = get_post_type();
if($wp_post_types == 'product'){
$languages = [];
$types = [];
echo '<h3>Documents</h3>';
$documents = get_field('document_uploads');
foreach ($documents as $key => $value) {
$resource_language = wp_get_post_terms($value->ID, 'resource_language', true);
array_push($languages, $resource_language[0]->name);
$resource_type = wp_get_post_terms($value->ID, 'resource_type', true);
array_push($types, $resource_type[0]->name);
}
array_unshift($languages, "English");
$languages = array_unique($languages);
$types = array_unique($types);
foreach ($languages as $key => $language_value) {
echo '<div class="language-area" style="margin-bottom:20px;">';
echo '<strong>'.$language_value.'</strong><br><br>';
foreach ($types as $key => $type_value) {
$counter = 0;
foreach ($documents as $key => $value) {
$resource_language = wp_get_post_terms($value->ID, 'resource_language', true);
$resource_type = wp_get_post_terms($value->ID, 'resource_type', true);
if($language_value == $resource_language[0]->name && $type_value == $resource_type[0]->name){
$counter++;
}
}
if($counter > 0){
echo '<strong>- '.$type_value.'</strong><br>';
foreach ($documents as $key => $value) {
$resource_language = wp_get_post_terms($value->ID, 'resource_language', true);
$resource_type = wp_get_post_terms($value->ID, 'resource_type', true);
if($language_value == $resource_language[0]->name && $type_value == $resource_type[0]->name){
echo '-- <a href="'.get_permalink($value->ID).'" >'.$value->post_title.'</a><br>';
}
}
}
}
echo '</div>';
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment