sergeyklay / breadcrumbs

Powerful and flexible component for building site breadcrumbs.
https://packagist.org/packages/sergeyklay/breadcrumbs
Other
40 stars 14 forks source link

namspace Phalcon\Breadcrumbs заменить Phalcon\ #26

Open sinbadxiii opened 4 years ago

sinbadxiii commented 4 years ago

@sergeyklay я напишу на русском, чтобы точнее выразить мысль)

Я хочу доработать хлебные крошки, добавив возможность внедрить микроразметку, той же Scheme.org, например.

Для этого мне нужно добавить папку Microdata с адаптерами микроразметки и использовать их уже непосредственно в классе Breadcrumbs, но проблема в том, что namespace у пакета идет Phalcon, что затрудняет использовать что-то внутри пакета, помимо главного класса.

Как временный костыль, чтобы иметь возможность доработать пакет я в composer.json прописал

"autoload": {
        "psr-4": {
              ...
            "Phalcon\\Breadcrumbs\\": "vendor/sergeyklay/breadcrumbs/src/"
        }
    }

Вот хотел уточнить не планируется ли изменить namespace пакета на Phalcon\Breadcrumbs или может как-то по-другому выйти из такой ситуации?

sergeyklay commented 4 years ago

Я не против изменить пространстов имен если сохранится обратная совместимость. См. class_alias.

sinbadxiii commented 4 years ago

Я не против изменить пространстов имен если сохранится обратная совместимость. См. class_alias.

@sergeyklay Так то конечно совместимость ломается, т.к. в services.php надо тоже namespace поменять у класса при инициализации Breadcrumbs.

Но не совсем понятно где в пакете использовать class_alias)

Так уже все готово https://github.com/sinbadxiii/breadcrumbs/tree/issue-26 осталось только решить вопрос с alias'ами получается

sergeyklay commented 4 years ago

Мы можем например сделать два релиза: Минорный с алиасами и deprecated сообщениями и мажорный без алиасов, но с поломанной обратной совместимостью.

sinbadxiii commented 4 years ago

Мы можем например сделать два релиза: Минорный с алиасами и deprecated сообщениями и мажорный без алиасов, но с поломанной обратной совместимостью.

Про деприкейт тоже думал, тогда подумаю как их лучше сделать.

А если делать мажорную версию, то тогда я лучше кое-что перепишу заново, с возможностью рендера кастомных views, тогда не нужны будут все сеттеры и геттеры шаблонов и пакет в этом плане станет гибче