$term_id = 6;
if ( $terms = get_subterms_by_parent_id( $term_id ) ) {
array_push( $terms, $term_id );
} else {
$terms[] = $term_id;
}
if ( is_category( $terms ) ) {
// код...
}
function get_subterms_by_parent_id( $id, $taxonomy = 'category' ) {
$terms = get_terms( array(
'taxonomy' => $taxonomy,
'fields' => 'ids',
'hide_empty' => true,
'parent' => $id // or
//'child_of' => $id // to target not only direct children
) );
if ( !is_array( $terms ) ) {
return false;
}
return $terms;
}
Соостветственно нужно
1 - с www на без www
ServerName site.ru
ServerAlias www.site.ru
Можно ли его убрать и настроить редирект только через htaccess
2 - и c http на https
<VirtualHost *:443>
<VirtualHost *:80>
RewriteEngine on
RewriteCond %{SERVER_NAME} =www.site.ru [OR]
RewriteCond %{SERVER_NAME} =site.ru
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
sudo a2enmod rewrite
sudo service apache2 restart
Откуда то берется 302 редирект.
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Или совсем убрать и настраивать редирект только через .htaccess <input
type="text"
name="token"
inputmode="numeric"
pattern="[0-9]"
autocomplete="one-time-code"
/>
Какая то магия, есть формаМагия вне Хогвардса не работает, все поддается куда более простым законам природы )
И вообще можно посмотреть что уходит постом?для посмотреть что отправляется - смотрите девтулс - нетворк, там все видно.
я больше всего понять не могу, почему форма отправляется с кнопки, а через jquery нет.Значит какое-то условие в вашем коде не выполняется, логично же. Ставьте console.log() по ходу выполнения цепочки, смотрите значения, думайте...
const inputs = [...document.querySelectorAll('.input')];
inputs.forEach(n => n.addEventListener('input', onInput));
function onInput({ target: t }) {
if (t.value.length === t.maxLength) {
t.nextElementSibling?.focus();
}
if (inputs.every(n => n.value.length === n.maxLength)) {
// здесь дёргаете свою функцию
}
}
const dd = document.getElementById( 'date_delivery' );
const ints = document.querySelectorAll( '.form_radio_btn' );
dd.onchange = function() {
const dt = this.valueAsDate;
console.log( ymdhi( dt) );
ints.forEach( int => disen( int, dt ) );
}
dd.valueAsDate = new Date();
dd.onchange();
function disen( int, dt ) {
const [ h1, i1, h2, i2 ] = int.querySelector( '.form_radio_btn label' ).innerText.split( /\D+/ );
const { year, month, date } = ymdhi( dt );
const d1 = new Date( year, month, date, h1, i1, 0 );
const d2 = new Date( year, month, date, h2, i2, 0 );
const now = new Date();
int.querySelector( '.form_radio_btn input' ).disabled = ( now > d1 );
}
function ymdhi( now ) {
const year = now.getFullYear();
const month = now.getMonth();
const date = now.getDate();
const hours = now.getHours();
const minutes = now.getMinutes();
return { year, month, date, hours, minutes }
}
<link rel="stylesheet" href="/frontend.css?v=2">