<?php if ( is_user_logged_in() ) { ?>
<a href="<?php echo get_permalink( get_option( 'woocommerce_myaccount_page_id' ) ); ?>"
title="<?php _e( 'My Account', 'woothemes' ); ?>"><?php _e( 'My Account', 'woothemes' ); ?></a>
<?php } else {
$obj = get_queried_object();
if ( is_singular() ) {
$red_url = 'my_red_single=' . $obj->ID;
} else {
$red_url = 'my_red_term=' . $obj->term_taxonomy_id;
}
?>
<a href="<?php echo get_permalink( get_option( 'woocommerce_myaccount_page_id' ) ); ?>/?<?php echo $red_url; ?>"
title="<?php _e( 'Login / Register', 'woothemes' ); ?>"><?php _e( 'Login / Register', 'woothemes' ); ?></a>
<?php } ?>
add_filter( 'woocommerce_login_redirect', 'my_wc_login_redirect', 10, 2 );
function my_wc_login_redirect($redirect, $user) {
$url = '';
if ( !empty( $_GET[ 'my_red_single' ] ) ) {
$url = get_the_permalink( (int) $_GET[ 'my_red_single' ] );
} elseif ( !empty( $_GET[ 'my_red_term' ] ) ) {
$url = get_term_link( (int) $_GET[ 'my_red_term' ] );
}
return !empty( $url ) ? $url : home_url();
}
именно как лучше создать сам шаблон, использовать фреймворк или же создавать все файлы руками,
стоит ли создавать под каждую страницу файл page-имя страницы или же один page для всех/blockquote>
Вопрос - глупый, вы упоминаете иерархию шаблонов, но судя по всему курили ее плохо.
Объясняю на примере страниц.
page-{slug}.php – для страницы с определенным слагом
page-{id}.php – для страницы с определенным id
page.php - общий для страниц
singular.php - универсально для любой единичной записи любого типа
index.php - если нет других подходящих шаблонов
Соответственно подбираете, то, что вам надо.
Но использование page-{slug}.php и page-{id}.php это ИМХО плохой тон, и делать такое не стоит, теряется универсальность
<main id="main" class="site-main" role="main">
<?php if ( have_posts() ) : $n = 1; ?>
<?php /* Start the Loop */ ?>
<div class="posts-loop">
<?php while ( have_posts() ) : the_post();
$class = $n % 5 === 0 || $n === 1 ? ' class-5' : ''; ?>
<article id="post-<?php the_ID(); ?>" <?php post_class( 'list-post grid_item' . $class ); ?> >
<?php
/* Include the Post-Format-specific template for the content.
* If you want to override this in a child theme, then include a file
* called content-___.php (where ___ is the Post Format name) and that will be used instead.
*/
get_template_part( 'template-parts/' . $post_template );
?>
</article>
<?php $n++; endwhile; ?>
</div><!-- / .posts-loop -->
<div class="postnav">
<?php if ( function_exists( 'wp_pagenavi' ) ) {
wp_pagenavi();
} ?>
</div>
<?php else : ?>
<?php get_template_part( 'template-parts/content', 'none' ); ?>
<?php endif; ?>
</main><!-- #main -->
//Здесь вся информация постов и т.д.
В режиме разработчика в гугл хром напротив файлов стилей указан статус 404.