Здравствуйте, я еще вам немного надоем с вашего позволения)) Мне кажется было бы неплохо если бы кастомные templates подхватывались из любого дополнения. Логично просто загрузить дополнение и все , чем загрузить а потом бегать по папкам. Как пример я хочу создать name-custom.php для своего дополнения которое расширяет другое ,для этого мне нужно создавать этот шаблон в папке родительского дополнения, это не критично для создателя, но для пользователя конечно лишние телодвижения да и не все разбираются порой в путях бродят как в трех соснах.
Добрый день, т.е. мы сможем написать дополнение, в которое мы сможем просто закидывать темлейты, которые захотим перезаписать из других дополнений?
Ну это совершенно другой подход к работе с темплейтами, чем тот, что используется сейчас. Кроме того, я пока не понимаю, как мы должны определить какой именно темплейт будет перезаписываться, если они будут иметь одинаковые имена, по сути это будет зависеть от того, в какой последовательности будут загружаться дополнения, а это неверно. Пока сомнительно все.
Я наверно немного другое имел в виду. Вот есть дополнение оно использует свои шаблоны. Я пишу дополнение кастомизатор и было бы удобно если бы я написал свой шаблон который не переопределяет какие то текущие шаблоны родительского дополнения а просто я в шорткоде хочу указать type="мой шаблон" и этот шаблон бы подхватился из папки моего дочернего дополнения. Как то так)
Если вы пишете дополнение - вы фильтром всегда можете переназначить на тот что вам нужен.
Kirill Zzz сказал(а)
Про фильтр я конечно знаю, читать умею)) Если бы я хотел задать вопрос я бы его задал в соответствующем разделе. Тут же раздел предложений, вот я и предлагаю.
ну раскройте свою мысль. Я не понимаю. А откуда какой-то доп должен что угадывать? Я не понял вашего предложения и его киллер фичи. Поясните логику.
А вот на практике - я писал доп и на лету переопределял шаблон. И не озадачивал юзера копированиями по папкам и прочее.
Но это решается уже сейчас - это есть в ядре.
Публикуйте предложения максимально подробно и предлагайте реальные кейсы использования. Иначе вас не понять.
Сейчас сложность в чем?
Подгонять свои предложения под ваши требования я конечно не буду хотите читайте с водой, не хотите не надо). Я на вас не работаю чтобы ваши требования какие то выполнять)). Не нравиться "вода" ну проходи мимо) А мне без воды может не интересно. Думаю суть понятна. Мне не нужно аргументировать ваши решения по моим предложениям и в принципе я не жду ответов, я ничего не требую. Просто выразил свое мнение.
Kirill Zzz сказал(а)
если бы я написал свой шаблон который не переопределяет какие то текущие шаблоны родительского дополнения а просто я в шорткоде хочу указать type="мой шаблон"
Я не понимаю каким образом шорткод должен определить из папки какого дополнения подцепить указанный шаблон? возможно, закодить можно все, но, в данном случае, закодить это скорее должны вы в шорткоде своего дополнения, а не мы в ядре плагина, тем более все возможности для этого предоставляет. Это мое мнение.
Также добавлю, что свои предложения лучше не просто озвучивать, а также стараться обосновывать. Подход "не нравиться - проходи мимо" в данном случае, неуместен.
Может быть какой то общий интерфейс или класс который можно было бы отнаследовать в своем дополнении. Я просто не понимаю что нужно обосновать? Я просто выражаю мнение что было бы неплохо увидеть какой то механизм наследования чтобы не дублировать код. Вроде подробно описал что хотелось бы видеть, что я должен обосновать? Как реализовать? Так вам должно быть виднее. Мне как разработчику не очень нравиться писать код по принципу лишь бы работало. Когда то давно я делал магазин на вашем плагине и сейчас столкнулся доработать. Мне помощь никакая не нужно, я просто пишу и вижу на мой взгляд минусы и решил поделиться с авторами своими наблюдениями. Я рассчитывал всего лишь на Спасибо мы по возможности учтем ваши пожелания и все, а никак не на обоснуй. Еще раз озвучу. Хотелось бы создавать свой шаблон который подхватывался из папки шаблонов текущего дополнения. Возможно это какой то общий интерфейс реализующий механизм шаблонизации дополнений с возможностью наследования от каждого конкретного класса. Пример я в своем дополнении наследуюсь от класса шаблона например магазина и мне не надо переопределять пути через хуки и так далее. Просто создаю шаблон в папке шаблонов наследуюсь от нужного класса и все шаблон подхватился. Так же в каждом дополнении есть файл в котором указано имя дополнения, можно по принципу шаблонов вордпресса в комментарии указывать к какому дополнению относится шаблон. Возможно как то так. Я не знаю я в ядро не вникал. Поэтому и пишу что это пожелание а не претензия. А пожелания не думаю что нужно обосновывать. Желаю успеха!
Понял, значит это была фантазия на тему "вот было бы здорово". Но нет, это не сработает.
Если взять приведенный вами пример: указание шаблона через атрибут шорткода, то я уже указал на основную проблему, которая может возникнуть - отсутствие понимания какой именно шаблон необходимо подключать. При текущей логике это можно реализовать подключив шаблон из текущего дополнения по переданному наименованию шаблона, а по предложенной вами надо будет определить из папки какого дополнения подключить шаблон, если их вдруг оказалось три одноименных в разных дополнениях, а это проблема. Допустим есть шаблон template.php в одном дополнении, решаем перезаписать его через другое и втыкаем в свой доп template.php. Откуда возьмется уверенность, что это второй шаблон переопределит первый? ниоткуда, это будет зависеть от порядка загрузки дополнений.
Вариант с переопределением класса шаблона своим классом возможно мог бы быть рабочим, если бы шаблоны инициализировались бы через свой класс, но такого нет, непонятно зачем шаблону свой класс, никто так не работает с шаблонами. А даже если бы и было, то что вы указывали бы в своем шорткоде? имя класса шаблона видимо, который бы просто ссылался на ваш шаблон не более того.
Вы как автор своих дополнений вполне можете успешно использовать текущий функционал шаблонов, он вполне удобен и пока я не вижу причин что то в этом функционале кардинально переделывать.