Перейти к содержимому


× Быстрый вопрос
Пользователь месяца
Olya23 Olya23 1-й за Июнь
Очков активности: 1 278 3 темы, 133 сообщения, 6 баллов репутации
ТОП самых активных за этот месяц
  • Фотография web-coder
    #1

    web-coder (good-hoster.ru)
    Очков активности: 999 0 тем, 74 сообщения, 9 баллов репутации

  • Фотография Андрей WPMasterKZ
    #2

    Андрей WPMasterKZ (wpmaster.kz)
    Очков активности: 556.5 2 темы, 47 сообщений, 7 баллов репутации

  • Фотография Rodiola
    #3

    Rodiola (rukodelkovo.ru)
    Очков активности: 243 1 тема, 78 сообщений, 2 балла репутации

  • Фотография Megoydagi
    #4

    Megoydagi (24ho.ru)
    Очков активности: 144 4 темы, 12 сообщений, 4 балла репутации

  • Фотография maxnik
    #5

    maxnik (konovalovpavel.ru)
    Очков активности: 112.5 0 тем, 25 сообщений, 3 балла репутации

  • Фотография FIvYUr
    #6

    FIvYUr (moy-evroopt.ru)
    Очков активности: 108 1 тема, 33 сообщения, 2 балла репутации

  • Фотография BLIK
    #7

    BLIK
    Очков активности: 84 Вне конкурса за определение пользователя месяца

  • Фотография lena220678
    #8

    lena220678
    Очков активности: 60 3 темы, 31 сообщение, 1 балл репутации

  • Фотография Olya23
    #9

    Olya23
    Очков активности: 45 Вне конкурса за определение пользователя месяца

  • Фотография katti8907
    #10

    katti8907
    Очков активности: 30 3 темы, 11 сообщений, 1 балл репутации

  • Показать весь ТОП 10
Поддержите форум! =)
Апдейты
  • Яндекс ИКС: 25.06.2019
  • Яндекс выдача: 21.07.2019
Топ 5 участников по репутации


Анализ якоря в URL-е

#1 ShowPrint

ShowPrint
  • Пользователь PRO
  • 3 318 сообщений
  • Репутация: 933
0

Отправлено 04 Февраль 2019 - 20:39

Всем добра!

 

Возникла у меня очередная бредовая идея при формировании страницы формировать некое магическое действо в зависимости от наличия/отсутствия/вида якоря (хештега) в урле.

 

Насколько я знаю, на стороне сервера якоря не обрабатываются.

 

Погуглив сабж и изучив "многабукафф" пришёл к выводу что логичнее всего посредством JS (точнее jQuery):

  • отлавливать клик по гиперссылке
  • анализировать href
  • в случае наличия якоря и необходимости "превращать" якорь в get-переменную и осуществлять переход посредством window.location.href

В этом случае я смогу на стороне сервера по "искусственно созданной" get-переменной делать всё что мне захотелось/придумалось.

 

Начал было шкодить, но в ламерскую буйну-головушку начали лезть поганые мысли, которыми решил поделиться...

 

Вопросы "из башки".

1. Самое простое ("вскрытие покажет")

Правильно ли я понимаю, что с кодом типа:

$('a').on('click',function(){
	if( условие ){
		window.location.href=сгенерированный_урл;
		return false;
	}
});

При несоблюдении "условия" клик по этой ссылке должен отработать как просто клик по ссылке, без "отлавливания" события-клика по ней?

Или этот клик будет проигнорирован и для перехода к месту назначения надо всё равно прописывать window.location.href=урл_по _умолчанию;

 

2. (больше всего волнует) Равнозначно ли действо клика без обработчика и window.location.href с точки зрения ПС?

 

С одной стороны загрузка страницы через window.location.href по идее должна быть равнозначна загрузке новой страницы (как бы внутренний переход по сайту), с другой стороны как-то стремновато потому как вдруг ПС-ы решат что я совершаю "подмену содержимого страницы", то есть "ввожу в заблуждение посетителя" или чего хуже "пытаюсь оказать влияние на поисковую выдачу".

Очень не хочется чтоб мне "прилетело от ПС" какое-нибудь наказание, вместо бонуса за улучшение  :)

 

Буду признателен любым мыслям по этому поводу.

Плагины не предлагать: CMS - рукоблудная, так что по любому решать задачу надо "ручками" :wacko:

 

Внимание
Чтобы увидеть этот текст Вам необходимо авторизоваться

 


 

 

  • 0
MasterWEBS: третий дом - моё хобби и увлечение... Второй дом: работа - не меньше 12 часов в день...
Первый дом - под охраной: "Осторожно - злая жена!" (дрессировалась долго и надёжно) /*ссылку не просите - не дам!*/


#2 Андрей WPMasterKZ

Андрей WPMasterKZ
  • Пользователь
  • 764 сообщений
  • Репутация: 101

Отправлено 05 Февраль 2019 - 19:19

Оффтопик


  • 0


#3 ShowPrint

ShowPrint
    Topic Starter
  • Пользователь PRO
  • 3 318 сообщений
  • Репутация: 933

Отправлено 05 Февраль 2019 - 19:32

не я один себе проблемы выдумываю
Ну а как же - наши руки не для скуки!!! =)

По тех.реализации я решу, и не такие заморочки ночами высиживали )))

Меня больше волнует второй вопрос, нет понимания содержимого электронных мозгов ПС, а тратить вечер на реализацию чтоб потом выкинуть её на помойку - жалко.

Причём не так жалко времени - опыт штука бесценная, и не так много его нужно на реализацию, как боюсь много гимора будет если прилетит "неприятностей" от ПС...

Не хочется обнаружить что в результате колдунства или страницы начнут из индекса вылетать, или пессимизируют в выдаче, или фильтр какой-нибудь прилетит  :wacko:


  • 0
MasterWEBS: третий дом - моё хобби и увлечение... Второй дом: работа - не меньше 12 часов в день...
Первый дом - под охраной: "Осторожно - злая жена!" (дрессировалась долго и надёжно) /*ссылку не просите - не дам!*/


#4 Андрей WPMasterKZ

Андрей WPMasterKZ
  • Пользователь
  • 764 сообщений
  • Репутация: 101

Отправлено 05 Февраль 2019 - 20:17

@ShowPrint, на счет эстетики могу только сказать. Я как-то задался вопросом подмены урлов через htaccess. Ну ты понял, рефку подставлять технично. Но так и не реализовал, установил плагин и забыл про это. Но вот в твоем случае, раз уж за эстетику переживаешь можно как эксперимент попробовать. Получится простой красивый урл в статье, а по клику подставляется автоматом твой гет-параметр, а уже на лету гет ловит твой скрипт на js.

 

Ха, во выдумал!  :D


  • 0


#5 ShowPrint

ShowPrint
    Topic Starter
  • Пользователь PRO
  • 3 318 сообщений
  • Репутация: 933

Отправлено 05 Февраль 2019 - 20:26

уж за эстетику переживаешь
Эстетика - это обложка, а угодить ПС-алгам - это бабки. Не нужно долго ванговать за что я больше переживаю =)))

 

Пока в голове нет определенности - забил на эстетику, вместо якоря на другие внутренние страницы решил проставлять get-параметр (ну и пусть в урле болтается), а при генерации страницы пыхом анализирую этот параметр и наличие соответствующего якоря, если всё норм - делаю анимированный переход. На предмет эстетики на этом сделал паузу, до того момента пока в башке не сложится пазл из мыслей =)


  • 0
MasterWEBS: третий дом - моё хобби и увлечение... Второй дом: работа - не меньше 12 часов в день...
Первый дом - под охраной: "Осторожно - злая жена!" (дрессировалась долго и надёжно) /*ссылку не просите - не дам!*/


#6 Андрей WPMasterKZ

Андрей WPMasterKZ
  • Пользователь
  • 764 сообщений
  • Репутация: 101

Отправлено 05 Февраль 2019 - 21:30

@ShowPrint, опять ты мне мыслей подкинул. Аж интересно стало ...  :o


  • 0


#7 ShowPrint

ShowPrint
    Topic Starter
  • Пользователь PRO
  • 3 318 сообщений
  • Репутация: 933

Отправлено 06 Февраль 2019 - 00:13

@Андрей WPMasterKZ, ха, мыслей...)))
У меня в списке todo по сайту меньше 50 пунктов (идей и планов) не бывает )))
  • 0
MasterWEBS: третий дом - моё хобби и увлечение... Второй дом: работа - не меньше 12 часов в день...
Первый дом - под охраной: "Осторожно - злая жена!" (дрессировалась долго и надёжно) /*ссылку не просите - не дам!*/


#8 ShowPrint

ShowPrint
    Topic Starter
  • Пользователь PRO
  • 3 318 сообщений
  • Репутация: 933

Отправлено 02 Март 2019 - 11:24

Зафиналить тему, так сказать...

 

Наколдовать что-то вразумительное с htaccess у меня самого не получилось, прибегнул к помощи ТП-хостера.

Гуру апачей помогли и рассказали про возможные варианты реализации, но поскольку это привело бы к массовому изменению урлов и непредсказуемой реакцией на это со стороны ПС - решил воздержаться.

 

В виду непонятной реакции всё тех же ПС на вариант с window.location.href - тоже решил с этим не заморачиваться.

 

В графе итого:

1.Решил анализ якоря делать не на лету, при клике, а после загрузки страницы пройтись по всем ссылкам, и поменять урлы на внешние страницы с якорем, преобразовав якоря в get-переменную

Внимание
Чтобы увидеть этот текст Вам необходимо авторизоваться

 

При клике на такую ссылку, в процессе формирования новой страницы пыхом, отлавливаю эту переменную и создаю js-переменную с якорем

Внимание
Чтобы увидеть этот текст Вам необходимо авторизоваться

 

Что имеем (когда это нужно и что с этим можно делать):

1. Пыховая $_Href позволяет формировать нужный вид страницы, например:

Есть у меня страница с аккордеоном на котором нужно реализовать открытие конкретной вкладки при загрузке страницы

 

2. Яваскриптовая cHref также может решать нужные задачи, такие как

переход к якорю на загружаемой странице сделать красивым-плавным;

Пример

 

3. Ну и задачу

Есть несколько страниц с частично скрытым содержимым (подргужаемым ajax-ом) которое по-хорошему тоже не мешало бы сразу при загрузке подгрузить до нужной записи

тоже можно решить с помощью любой из этих переменных. Какой и как лучше буду думать когда дойду до очередного перепиливания страницы ради которой это делалось  :)

 

 

Недостаток: в адресной строке остаётся болтаться get-переменная, но ТП-апачи сказали что менять вид урла это огромный гимор и подтолкнули меня к мысли что "овчинка выделки не стоит" этим заниматься

 

Коды профи-программеры могут подчистить, я - любитель и прощаю себе некую кривизну.

 

Если кто-то решит сотворить себе нечто подобное, то обращаю внимание на то, что надо не забыть отфильтровать урл с get-переменной из индекса ПС


Сообщение отредактировал ShowPrint: 02 Март 2019 - 11:25

  • 0
MasterWEBS: третий дом - моё хобби и увлечение... Второй дом: работа - не меньше 12 часов в день...
Первый дом - под охраной: "Осторожно - злая жена!" (дрессировалась долго и надёжно) /*ссылку не просите - не дам!*/


#9 fedornabilkin

fedornabilkin
  • Модератор
  • 1 176 сообщений
  • Репутация: 200

Отправлено 21 Март 2019 - 13:17

Что-то я не понял. А почему не использовал вариант с сессиями и куками?

1. Кликаешь на нужную ссылку, ловишь клик, пишешь нужный параметр в куки, потом дефолтный переход по ссылке.

2. Отрисовал страницу, посмотрел наличие куки, посмотрел наличие элемента, до которого прокрутить и прокрутил, если они оба есть.

3. После прокрутки надо почистить куку.

 

В итоге чистые урлы и катайся по странице как угодно. В случае с куками даже не надо пых задействовать.

Кстати, в кнопках очень не хватает transition в плане стилей. Чтоб была мягкая смена фона при наведении.


  • 1

Надо обсудить предложение. А тут знакосчиталка считает знаки. Про Yii2 написано.



#10 ShowPrint

ShowPrint
    Topic Starter
  • Пользователь PRO
  • 3 318 сообщений
  • Репутация: 933

Отправлено 21 Март 2019 - 14:45

Что-то я не понял.
Хочешь объясню?

Застал времена когда на ТВ реклама алкогольных напитков была свободной?

Тогда была реклама со слоганом: пиво "Золотая Бочка" - надо чаще встречаться!

 

На твой вопрос могу ответить другим вопросом: ну и где тебя носило больше чем полтора месяца со стартпоста?  :diablo:

 

Сцуко, вот подозревал же что есть красивое решение и оно прямо на поверхности.

И топик создавал в надежде получить подсказку от людей промышляющих коддингом. А ты... А ещё друг называется...

Да ладно - будем считать это подарком для меня... Сегодня 4 года моего пребывания на форуме... Млин, а как будто это было вчера... =)

 

Спасибо за подсказку, займусь и сделаю.

Только сначала поинтересуюсь чтоб не было негатива со стороны Тындекса при работе с куками на незащищённом - я пока ещё так и не переехал  :(

 

ЗЫ

в кнопках очень не хватает transition
Попробую сделать/посмотреть/оценить (гранд мерси)
  • 0
MasterWEBS: третий дом - моё хобби и увлечение... Второй дом: работа - не меньше 12 часов в день...
Первый дом - под охраной: "Осторожно - злая жена!" (дрессировалась долго и надёжно) /*ссылку не просите - не дам!*/


#11 fedornabilkin

fedornabilkin
  • Модератор
  • 1 176 сообщений
  • Репутация: 200

Отправлено 21 Март 2019 - 15:04

Да, есть грешок за мной. Но у меня тут обстоятельства личного характера в затяжном прыжке. Даже перестал постить интересные темы (кстати, желающие изучить yii2 самоликвидировались) по разработке на основе фреймворка Yii2.

Стараюсь регулярно и постоянно заглядывать. Если что, упоминай меня, тогда уведомления буду видеть.

 

А ты... А ещё друг называется...
Когда шашлык бухать говоришь? Может мы и живем близко, я в Опалихе. 
  • 0

Надо обсудить предложение. А тут знакосчиталка считает знаки. Про Yii2 написано.



#12 ShowPrint

ShowPrint
    Topic Starter
  • Пользователь PRO
  • 3 318 сообщений
  • Репутация: 933

Отправлено 21 Март 2019 - 15:24

@fedornabilkin, я же шучу и без обид - мы все в затяжном прыжке и с личными обстоятельствами. Не мы такие - жизнь такая. Поэтому всё норм - я с пониманием.  :friends:

 

Оффтопик


  • 0
MasterWEBS: третий дом - моё хобби и увлечение... Второй дом: работа - не меньше 12 часов в день...
Первый дом - под охраной: "Осторожно - злая жена!" (дрессировалась долго и надёжно) /*ссылку не просите - не дам!*/


robot

robot
  • Пользователь PRO
  • 2 652 сообщений
  • Репутация: 85


Похожие темы

  Название темы Автор Статистика Последнее сообщение

Оформление форума – IPBSkins.ru