188 lines
5.0 KiB
PHP
188 lines
5.0 KiB
PHP
<?php
|
|
|
|
# Add support for thumbnais
|
|
add_theme_support( 'post-thumbnails' );
|
|
|
|
|
|
register_nav_menus(
|
|
array( 'main-menu' => __( 'Main Menu', 'initfest' ),
|
|
'footer-openfest' => __('OpenFest', 'initfest'),
|
|
'footer-openfest' => __('OpenFest', 'initfest'),
|
|
'footer-schedule' => __('Schedule', 'initfest'),
|
|
'footer-others' => __('Others', 'initfest'),
|
|
'footer-followus' => __('Follow us in:', 'initfest') )
|
|
);
|
|
|
|
add_shortcode('sh-latest-posts', 'sh_latest_posts');
|
|
|
|
function sh_latest_posts($atts){
|
|
$atts = shortcode_atts( array(
|
|
'cat' => 'news',
|
|
'label' => __('News', 'initfest')
|
|
), $atts );
|
|
|
|
$result = '<section class="content"><h3>'.$atts['label'].' | <small><a href="'.esc_url(get_term_link($atts['cat'], 'category')).'">'.__('see all', 'initfest').'</a></small></h3><div class="grid">';
|
|
|
|
ob_start();
|
|
|
|
$news_args = array( 'catecory_name' => $cat, 'numberposts' => 3 );
|
|
$news = new WP_Query( $news_args );
|
|
|
|
if ( $news->have_posts() ) :
|
|
while ( $news->have_posts() ) : $news->the_post();
|
|
?>
|
|
<div class="col3">
|
|
<h4><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h4>
|
|
<p class="info">От <?php the_author(); ?> | Публикувано на <?php the_date(); ?> </p>
|
|
<?php the_excerpt(); ?>
|
|
<a class="button" href="<?php the_permalink(); ?>">виж цялата новина</a>
|
|
</div>
|
|
<?php
|
|
endwhile;
|
|
endif;
|
|
|
|
$result .= ob_get_contents();
|
|
$result .='</div></section>';
|
|
ob_end_clean();
|
|
|
|
return $result;
|
|
|
|
}
|
|
|
|
# Create a custom post type for Sponsors
|
|
function create_sponsors_posttype() {
|
|
|
|
$labels = array(
|
|
'name' => __( 'Sponsors' ),
|
|
'singular_name' => __( 'Sponsor' ),
|
|
'menu_name' => __( 'Sponsors'),
|
|
'all_items' => __( 'All Sponsors' ),
|
|
'view_item' => __( 'View Sponsor' ),
|
|
'add_new_item' => __( 'Add New Sponsor' ),
|
|
'add_new' => __( 'Add New' ),
|
|
'edit_item' => __( 'Edit Sponsor' ),
|
|
'update_item' => __( 'Update Sponsor' ),
|
|
'search_item' => __( 'Search Sponsor' ),
|
|
'not_found' => __( 'Not Found' ),
|
|
'not_found_in_trash' => __( 'Not Found In Trash' ),
|
|
);
|
|
|
|
$args = array(
|
|
'label' => __( 'sponsors' ),
|
|
'description' => __( 'Sponsors of OpenFest' ),
|
|
'labels' => $labels,
|
|
'supports' => array( 'title', 'excerpt', 'thumbnail', 'custom-fields', ),
|
|
'hierarchical' => false,
|
|
'public' => true,
|
|
'show_ui' => true,
|
|
'show_in_menu' => true,
|
|
'show_in_nav_menus' => true,
|
|
'show_in_admin_bar' => true,
|
|
'menu_position' => 5,
|
|
'can_export' => true,
|
|
'has_archive' => true,
|
|
'exclude_from_search' => false,
|
|
'publicly_queryable' => true,
|
|
'capability_type' => 'post',
|
|
);
|
|
|
|
register_post_type( 'sponsors', $args );
|
|
}
|
|
|
|
add_action( 'init', create_sponsors_posttype );
|
|
|
|
|
|
# Create a custom post type for Speakers
|
|
function create_speakers_posttype() {
|
|
|
|
$labels = array(
|
|
'name' => __( 'Speakers' ),
|
|
'singular_name' => __( 'Speaker' ),
|
|
'menu_name' => __( 'Speakers'),
|
|
'all_items' => __( 'All Speakers' ),
|
|
'view_item' => __( 'View Speaker' ),
|
|
'add_new_item' => __( 'Add New Speaker' ),
|
|
'add_new' => __( 'Add New' ),
|
|
'edit_item' => __( 'Edit Speaker' ),
|
|
'update_item' => __( 'Update Speaker' ),
|
|
'search_item' => __( 'Search Speaker' ),
|
|
'not_found' => __( 'Not Found' ),
|
|
'not_found_in_trash' => __( 'Not Found In Trash' ),
|
|
);
|
|
|
|
$args = array(
|
|
'label' => __( 'speakers' ),
|
|
'description' => __( 'Speakers on OpenFest' ),
|
|
'labels' => $labels,
|
|
'supports' => array( 'title', 'excerpt', 'thumbnail', 'custom-fields', ),
|
|
'hierarchical' => false,
|
|
'public' => true,
|
|
'show_ui' => true,
|
|
'show_in_menu' => true,
|
|
'show_in_nav_menus' => true,
|
|
'show_in_admin_bar' => true,
|
|
'menu_position' => 6,
|
|
'can_export' => true,
|
|
'has_archive' => true,
|
|
'exclude_from_search' => false,
|
|
'publicly_queryable' => true,
|
|
'capability_type' => 'post',
|
|
);
|
|
|
|
register_post_type( 'speakers', $args );
|
|
}
|
|
|
|
add_action( 'init', create_speakers_posttype );
|
|
|
|
|
|
|
|
# Create a custom post type for Tranportation
|
|
function transportation_posttype() {
|
|
|
|
register_post_type( 'transportation',
|
|
array(
|
|
'labels' => array(
|
|
'name' => __( 'Tranportation' ),
|
|
),
|
|
'public' => true,
|
|
'has_archive' => true,
|
|
'rewrite' => array('slug' => 'transportation'),
|
|
)
|
|
);
|
|
}
|
|
|
|
add_action( 'init', 'transportation_posttype' );
|
|
|
|
|
|
# Create shortcode for sponsors
|
|
function sponsors_shortcode() {
|
|
$output = '';
|
|
|
|
$sponsors_args = array( 'post_type' => 'sponsors', 'orderby' => 'rand' );
|
|
$sponsors = new WP_Query( $sponsors_args );
|
|
|
|
if ( $sponsors->have_posts() ) :
|
|
while ( $sponsors->have_posts() ) : $sponsors->the_post();
|
|
if ( has_post_thumbnail() ) {
|
|
$output .= the_post_thumbnail();
|
|
} else {
|
|
$output .= get_the_title();
|
|
}
|
|
endwhile;
|
|
endif;
|
|
|
|
return $output;
|
|
|
|
}
|
|
|
|
|
|
# Register all shortcodes
|
|
function register_shortcodes(){
|
|
add_shortcode('sponsors', 'sponsors_shortcode');
|
|
}
|
|
|
|
add_action( 'init', 'register_shortcodes');
|
|
|
|
|
|
?>
|