Вопрос: является ли количество работ в разделе "портфолио" сайта фактором ранжирования в Яндексе и Google?
В поиске не нашёл информации, является ли это коммерческим фактором ранжирования или чем-то подобным.
во всех видео и статьях рассказывается, про единый файл app.js неужели один файл нужно прикреплять вообще на все страницы сайта и этот монстр будет по id или вызову компонентов понимать
Или происходит сборка под каждую сложную сущность?
project/
- home/
-- home.html <-- подключение home.js/scss и библиотек (если они не требуют кастомной настроки)
-- home.js <-- импорт js библиотек и кастомная настройка именно под страницу home
-- home.scss <-- импорт scss библиотек и кастомная настройка именно под страницу home
- catalog/
-- catalog.html <-- подключение catalog.js/scss и библиотек (если они не требуют кастомной настроки)
-- catalog.js <-- импорт js библиотек и кастомная настройка именно под страницу catalog
-- catalog.scss <-- импорт scss библиотек и кастомная настройка именно под страницу
- libs/
-- popup.js
-- form.js
dist/
- home.html <-- подключено main.js/css + home.js/css
- catalog.html <-- подключено main.js/css + catalog.js/css
- assests/
-- main.js <-- общие
-- main.css <-- общие
-- home.js
-- home.css
-- catalog.js
-- catalog.css
Вопрос: как по запросу (после отправки) посмотреть из каких источников этот ответ приходит?
from rest_framework import viewsets, status
from rest_framework.response import Response
class FooBarAPI(viewsets.ViewSet):
def initial(self, request, *args, **kwargs):
super().initial(request, *args, **kwargs)
self.query_params = getattr(request, 'query_params', {})
def foo(self, request, *args, **kwargs):
print(self.query_params.get('param1'))
return Response("foo", status=status.HTTP_200_OK)
def bar(self, request, *args, **kwargs):
print(self.query_params.get('param2'))
return Response("bar", status=status.HTTP_200_OK)
import time
from fake_useragent import UserAgent
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
option = webdriver.ChromeOptions()
ua = UserAgent()
option.add_argument(f'user-agent={ua.random}')
option.add_argument("--disable-infobars")
s = Service(executable_path=r"C:\Python Scripts\валид\Steam Number\chromedriver.exe")
driver = webdriver.Chrome(options=option, service=s)
driver.maximize_window()
driver.get('https://help.steampowered.com/en/wizard/HelpWithLoginInfo?issueid=406')
# iframe
iframe = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.XPATH, '/html/body/div[1]/div[7]/div[2]/div[2]/div/div[2]/div[1]/div[3]/form/div[3]/div[1]/div/div/div/iframe'))
)
# switch to iframe context
driver.switch_to.frame(iframe)
element_to_click = WebDriverWait(driver, 10).until(
EC.element_to_be_clickable((By.XPATH, '/html/body/div[2]/div[3]'))
)
element_to_click.click()
# switch to default context
driver.switch_to.default_content()
time.sleep(10)
driver.quit()
class Program
{
static void Main(string[] args)
{
while (true)
{
Console.Clear();
double firstVal, secondVal = 0;
string act;
try
{
Console.WriteLine("Введите 1-е число: ");
firstVal = double.Parse(Console.ReadLine());
Console.WriteLine("Выберите операцию: '+' '-' '*' '/' 'x^' '√x'");
act = Console.ReadLine();
if (act == "exit")
{
Environment.Exit(0);
}
if (act == "√x")
{
Console.WriteLine(Math.Sqrt(firstVal));
}
else
{
Console.WriteLine("Введите 2-е число: ");
secondVal = double.Parse(Console.ReadLine());
}
}
catch (Exception)
{
Console.WriteLine("Введены недопустимые символы");
Console.ReadLine();
continue;
}
switch (act)
{
case "+":
Console.WriteLine(firstVal + secondVal);
break;
case "-":
Console.WriteLine(firstVal - secondVal);
break;
case "*":
Console.WriteLine(firstVal * secondVal);
break;
case "x^":
Console.WriteLine(Math.Pow(firstVal, secondVal));
break;
case "/":
if (secondVal == 0)
Console.WriteLine("Деление на ноль невозможно");
else
Console.WriteLine(firstVal / secondVal);
break;
default:
if (act != "√x") // проверка на допустимую операцию
Console.WriteLine("Ошибка! Неправильная операция.");
break;
}
Console.ReadLine();
Console.WriteLine("Введите 'exit' для выхода или нажмите Enter для продолжения.");
string? input = Console.ReadLine();
if (input == "exit")
{
Environment.Exit(0);
}
}
}
}
// Введите 1-е число:
// 5
// Выберите операцию: '+' '-' '*' '/' 'x^' '√x'
// /
// Введите 2-е число:
// 0
// Деление на ноль невозможно
//
// Введите 'exit' для выхода или нажмите Enter для продолжения.
// exit
//
// Введите 1-е число:
// 5
// Выберите операцию: '+' '-' '*' '/' 'x^' '√x'
// -
// Введите 2-е число:
// 3
// 2
//
// Введите 'exit' для выхода или нажмите Enter для продолжения.
// exit
# cursor.execute(f'INSERT INTO sausages (user_name, product_type, product_type_amount) VALUES ({user_name}, {product_type}, {product_type_amount})')
cursor.execute('INSERT INTO sausages (user_name, product_type, product_type_amount) VALUES (?, ?, ?)', (user_name, product_type, product_type_amount))
возможно ли подключить PostgreSQL к Wordpress?
Не придется ли переписывать SQL запросы, которые сделаны под MariaDB / MySQL?
Много чего читал, все объяснено малость «на ленточке», без точных цифр в большом количестве, чтобы представить общую картину.
Есть ли какие-то среднестатистические данные?
подскажите, как лучше сделать все таки