if($_SERVER['REMOTE_ADDR']) =='127.0.0.1') { // ip для примера
die('доступ закрыт');
}
<IfModule mod_rewrite.c>
# Запускаем движок замены
RewriteEngine on
# Не применять к существующим директориям
RewriteCond %{REQUEST_FILENAME} !-d
# Не применять к существующим файлам файлам
RewriteCond %{REQUEST_FILENAME} !-f
# если запрашиваемый объект с дописанным расширением php - файл
# RewriteCond %{REQUEST_FILENAME}\.php -f
# делаем замену с дописыванием .php
# RewriteRule ^(.*)$ $1.php
# или Редирект всех запросов на index.php
# RewriteRule .* index.php [L]
RewriteRule ^(.*)$ index.php?url_param=$1 [L,QSA]
</IfModule>
const options = document.querySelectorAll('#id_active > option');
options[0].innerHTML = 'Да1';
options[1].innerHTML = 'Нет1';
<div <?php post_class(); ?>>
post 1
<div>
<div <?php post_class(); ?>>
post 2
<div>
<div <?php post_class(); ?>>
post 3
<div>
<div class="post gauthor">
post 1
<div>
<div class="post gauthor">
post 2
<div>
<div class="post gauthor">
post 3
<div>
.post{
color: grey;
}
.post.gauthor{
color: red;
}
function serverPing() {
$.ajax({ url: location.href }); // <-- добавить до 2
}
$(document).ready(function() { // <-- найти эту строку 1
setInterval('serverPing()', 30000); // <-- добавить после 3
const openedEye = 'M8 1.488c-5.302 0-8 5.21-8 6.512 0 1.302 2.791 6.512 8 6.512S16 9.302 16 8c0-1.302-2.698-6.512-8-6.512zm0 10.233A3.731 3.731 0 014.279 8 3.731 3.731 0 018 4.279 3.731 3.731 0 0111.721 8 3.731 3.731 0 018 11.721zM8 6c1.143 0 2 .953 2 2 0 1.143-.952 2-2 2-1.143 0-2-.952-2-2 0-1.142.857-2 2-2z';
var el = document.querySelector('body'); <!-- не html, а body --->
const xmlns = "http://www.w3.org/2000/svg";
const toggleContainer = document.createElement('div');
toggleContainer.classList.add('_toggle');
el.append(toggleContainer);
// svg
const svgEl = document.createElementNS(xmlns, 'svg');
svgEl.setAttribute('width', '16');
svgEl.setAttribute('height', '16');
svgEl.setAttribute('viewBox', '0 0 16 16');
toggleContainer.append(svgEl);
// path
const pathEl = document.createElementNS(xmlns, "path"); <!-- path тоже NameSpace-->
pathEl.setAttribute('fill-rule', 'evenodd');
pathEl.setAttribute('d', openedEye);
svgEl.append(pathEl);
const types = { /* ключ : ' что выводить' - отредактируйте сами*/
'undefined': 'undefined',
'object': 'object/oser',
'boolean': 'bool',
'number': 'number',
'string': 'string',
'symbol': 'symbol',
'function': 'func',
}
let current_type = i12.value; // значение input
if (typeof types[typeof current_type] !== "undefined") { // если существует такой ключ в объекте, то
div12.innerHTML = types[typeof i12]+''; // выводим в блоке div12
}else{ // иначе
div12.innerHTML = ''; // очищаем блок div12 - value = ""
}
<?php
$prev_url = get_permalink( get_adjacent_post(false,'',true) ->ID ); // предыдущая
$next_url = get_permalink( get_adjacent_post(false,'',false)->ID ); // следующая
$current_num = (get_query_var('paged')) ? get_query_var('paged') : 1; // номер текущей
?>
<div class="jbtn_wrapper">
<?php if($prev_url !== false){?>
<button type="button" class="prev" onclick="window.location.href = '<?=$prev_url?>';">Назад</button>
<?php } ?>
<?php if($next_url !== false)?>
<button type="button" class="next" onclick="window.location.href = '<?=$next_url?>';">Далее</button>
<?php } ?>
<div class="arrow_body">
<div class="arrow"><ion-icon name="chevron-back-outline"></ion-icon></div>
<input type="number" min="1" value="<?=$current_num?>" class="num_page">
<div class="arrow"><ion-icon name="chevron-forward-outline"></ion-icon></div>
</div>
</div>
const textarea = document.createElement('TEXTAREA');
document.querySelector('body').appendChild(textarea);
textarea.innerHTML = '';
const el = document.querySelectorAll('*');
var css_list = '';
for(var i = 0; i < el.length; i++){
if(el[i].id!==''){
textarea.innerHTML += '#'+el[i].id+'{}\n';
}
if(el[i].classList.length > 0){
for(var c = 0; c < el[i].classList.length; c++){
textarea.innerHTML += '.'+el[i].classList[c]+'{}\n';
console.log(el[i].classList[c]);
}
}
}
tinymce.init({
selector: 'textarea', // change this value according to your HTML
auto_focus: 'element1'
});
curl_setopt($curl, CURLOPT_HEADER, falsse) // < -- SS
// POST -запрос к серверу
$curl_cookie = '';
$curl_error = false;
$headers = array(
'Host: api-seller.ozon.ru',
'Client-Id: cID',
'Api-Key: token',
'Content-Type: application/json'
);
$url = 'https://api-seller.ozon.ru/v1/product/import/stocks';
$arguments = array(
'offer_id' => '4574950',
'product_id' => 492575182,
'stock' => 0
);
function web_post( $url, $arguments = [], $headers = '', $sleep = 0, $timeout = 600 ) {
global $curl_error, $curl_cookie;
if( $sleep > 0 ){
sleep( $sleep );
}
$ch = curl_init();
$copt = [
CURLOPT_URL => $url,
CURLOPT_COOKIE => $curl_cookie,
CURLOPT_POST => 1,
CURLOPT_POSTFIELDS => $arguments,
CURLOPT_COOKIESESSION => 1,
CURLOPT_SSL_VERIFYHOST => 0,
CURLOPT_SSL_VERIFYPEER => 0,
CURLOPT_VERBOSE => 0,
CURLOPT_FOLLOWLOCATION => 1,
CURLOPT_UNRESTRICTED_AUTH => 1,
CURLOPT_FAILONERROR => 1,
CURLOPT_AUTOREFERER => 1,
CURLOPT_TIMEOUT => $timeout,
CURLOPT_CONNECTTIMEOUT => $timeout,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_HTTPHEADER => $headers
];
curl_setopt_array($ch,$copt);
if(false === ( $data = curl_exec( $ch ))){
$curl_error = curl_error($ch);
}
curl_close($ch);
return $data;
}
print_r(web_post( $url, json_encode( $arguments ), $headers));
<div class="out"></div>
<!-- пустой div для вывода данных-->
// в скобках JSON.parse() ответ сервера json
const answer = JSON.parse('[{"conf":{"type":"text","tech_type":"js","parser":"jq","comm1":"5mr","comm2":"priv","name":"Petr","f_name":"Ivanov","enable":"no"}}]')[0].conf;
const out = document.querySelector('.out'); // находим div
out.innerHTML =''; // очищаем его
for (key in answer) { //перебираем объект
out.innerHTML += '<div id="'+key+'">'+answer[key]+'</div>'; добавляем внутрь out
}
echo "<script>const tg_href = 'tg://resolve?domain=" . $config['bot'] . "&start=" . $key . "&id=auth';</script>";
<button onclick="window.open('tg_href');"
<li data-filter="">
<li data-target="">
$("#grid-filter li").click(function() {
var group = $(this).data('target');
var group_class = "." + group; // БЫЛО по классу (переменную назовите group_attr чтоб не вспоминать через год)
var selector = '[data-filter~="' + group + '"]'; // по атрибуту - (меньше селектор = меньше проверок)
"workbench.colorCustomizations": {
"editorIndentGuide.background": "#00ff00",
"editorIndentGuide.activeBackground": "#ff0000",
}
workbench.colorCustomizations": {
"editor.foreground": "#d4d4d4"
},
"editor.tokenColorCustomizations":{
"textMateRules": [
{
"name": "operator logical",
"scope": "keyword.operator.logical",
"settings": {
"foreground": "#eeaf51"
}
}
]
}