How should I add a “widget” like element?

This is entirely up to you. Both approaches should do the same thing. I really do think that you having trouble with correct implementation of your first choice/approach. What you are trying to do is correct using a separate template for your slideshow and then calling it with get_template_part(). The problem it seems is your … Read more

How to add new CSS file to new PHP file

CSS links are relative to the current request URI, not your PHP file. Use an absolute path like: <link rel=”stylesheet” href=”https://wordpress.stackexchange.com/questions/184258/<?php bloginfo(“template_url’ ) ?>/themesubfolder/style.css” />

Best way to organize data in this scenario

I vote for having two separate pages since this gives you all the power of permalinks that go directly to a specific video. That’s much better for you and your visitors since the content can be more easily shared. From the codes perspective, you can apply DRY principles and still use a single-video.php and archive-video.php … Read more

optional parameter in permalink structure

Update You can make use of the add_rewrite_endpoint: add_rewrite_endpoint( ‘schools’, EP_PERMALINK | EP_PAGES ); You can then check in the sidebar for the schools variable: global $wp_query; if ( isset( $wp_query->query_vars[‘schools’] ) ) { // … } What is worth mentioning is that your URL will look like www.example.com/performance/name-of-performance/schools/ instead of having schools immediately after … Read more

How to change single custom post template by custom taxonomy?

What you would do, is have your default single-article.php. This will get called by default because of the WP permalinks and templating system. At the top of your single-article.php do the following before your get_header() call: <?php $language = get_the_terms( get_the_ID(), ‘language’ ); if ( ! is_wp_error( $language) && $language && ‘French’ == $language[0]->name ) … Read more

Pagination shows Same posts

This made it work. Thanks Milo for link <?php $args = array( ‘posts_per_page’ => 12, ‘post_type’ => ‘post’, ‘paged’ => get_query_var( ‘paged’ ), ‘cat’ => ‘106,93,138,136,86,23,103,83,84,92,78,137’ ); $query = new WP_Query($args); ?>