사용자 지정 패키지에 대한 Composer 설치 경로
저는 이 주제에 대한 다른 질문들을 읽었는데 이 문제가 제대로 작동하지 않는 것 같습니다.설치할 사용자 지정 패키지로 cform을 다운로드하려고 합니다.wp-content/plugins/cforms
같은 다른 할 수 요.wpackagist
공급품들과 심지어 일부 맞춤 플러그인들도 자체적으로 개발되었습니다.
제가 가진 것입니다.
{
"name": "mycompany/wordpress-install",
"description": "Themes and plugins for our wordpress install.",
"authors": [
{
"name": "Me",
"email": "example@example.net"
}
],
"require": {
"deliciousdays/cforms": "14.5.2"
},
"repositories": [
{
"type": "package",
"package": {
"name": "deliciousdays/cforms",
"version": "14.5.2",
"dist": {
"url": "http://www.deliciousdays.com/download/cforms-v14.5.zip",
"type": "zip"
}
}
}
],
"extra": {
"installer-paths": {
"wp-content/plugins/cforms": ["deliciousdays/cforms"]
}
}
}
잘 는, 도 cforms 에 vendor/deliciousdays/cforms
때 (때 히)wp-content/plugins/cforms
을 잘못하고 내가 뭘 잘못하고 있는 거지?
이 composer.json을 사용해 보십시오. Wordpress(현재 v3.9)가 포함되어 있습니다.
특정 디렉토리에 설치하기 위해 fancy guy/webroot-installer를 사용합니다.
이 파일은 루트 워드프레스 디렉토리에 있어야 합니다.추가 섹션에는 "webroot-dir"가 "."로 표시됩니다. 현재 디렉토리에 설치됩니다(특정 디렉토리에 설치하려면 "/" 또는 "./"를 사용하지 마십시오). 설치할 디렉토리의 이름으로 변경하십시오.
"extra": {
"webroot-dir": ".",
"webroot-package": "wordpress"
}
따라서 이 파일을 실행한 후 wp-content/plugins 디렉토리에 cform을 배치한 일반 워드프레스 구조를 가져야 테마를 설치하려면 cforms 섹션을 복사하고 유형을 "wordpress-theme"로 변경하여 테마 디렉토리에 설치할 수 있습니다.
저는 작곡가 전문가는 결코 아니지만, 이 작업을 제대로 할 수 있었습니다.
{
"name": "mycompany/wordpress-install",
"description": "Themes and plugins for our wordpress install.",
"authors": [
{
"name": "Me",
"email": "example@example.net"
}
],
"repositories": [
{
"type": "composer",
"url": "http://wpackagist.org"
},
{
"type": "package",
"package": {
"name": "wordpress",
"type": "webroot",
"version": "3.9",
"dist": {
"type": "zip",
"url": "https://github.com/WordPress/WordPress/archive/3.9.zip"
}
}
},
{
"type": "package",
"package": {
"name": "cforms",
"type": "wordpress-plugin",
"version": "14.5.2",
"dist": {
"url": "http://www.deliciousdays.com/download/cforms-v14.5.zip",
"type": "zip"
}
}
}
],
"require": {
"php": ">=5.3.0",
"composer/installers": "~1.0",
"wordpress": "3.9",
"fancyguy/webroot-installer": "1.0.0",
"wpackagist/wordpress-seo": "*",
"cforms": "14.5.2"
},
"extra": {
"webroot-dir": ".",
"webroot-package": "wordpress"
}
}
wpackagist를 사용하면 다음 링크에서 설치 가능한 플러그인/테마 목록을 볼 수 있습니다.
http://plugins.svn.wordpress.org/
http://themes.svn.wordpress.org/
Wordpress Plugin Respository의 플러그인을 포함하려면 쉽게 추가할 수 있습니다.예를 들어 Yoast Wordpress SEO 플러그인을 추가하려면 다음을 추가해야 합니다(추가하려면 플러그인의 슬러그를 알아야 함).
"require": {
"php": ">=5.3.0",
"composer/installers": "~1.0",
"wordpress": "3.9",
"fancyguy/webroot-installer": "1.0.0",
"wpackagist/wordpress-seo": "*",
"cforms": "14.5.2"
}
여러 가지 시도 끝에 드디어 알아냈습니다.두 가지를 놓친 것 같습니다.
에 변경했습니다."type": "wordpress-plugin"
, 그 다음에 필요한 것들을 추가할 수 밖에 없었습니다."composers/installers": "~1.0"
오이)에 extra
완전히 제거됨):
{
"name": "mycompany/wordpress-install",
"description": "Themes and plugins for our wordpress install.",
"authors": [
{
"name": "Me",
"email": "example@example.net"
}
],
"require": {
"composer/installers": "~1.0.0",
"deliciousdays/cforms": "14.5.2"
},
"repositories": [
{
"type": "package",
"package": {
"name": "deliciousdays/cforms",
"version": "14.5.2",
"type": "wordpress-plugin",
"dist": {
"url": "http://www.deliciousdays.com/download/cforms-v14.5.zip",
"type": "zip"
}
}
}
]
}
사용자 지정 패키지를 선택한 디렉토리에 설치하는 방법을 여전히 파악할 수 없습니다.composer/installers
그 안에 요구합니다.개체에 유형을 추가할 때까지 모든 것을 무시하는 것처럼 보이고 매핑을 결정하는 방법에 따라 해당 유형에 의해 정의된 위치로 강제 다운로드됩니다.
하지만 지금은 효과가 있을 것 같은데요...다운로드 할 수 있는 방법을 아는 사람이 있다면, 다음과 같이 말합니다."myfolder/something/cforms"
당신의 대답을 받아들이겠습니다.
제가 같은 문제에 부딪쳤기 때문에, 마침 제가 당신에게 답을 찾았습니다.현재 맞춤형 설치 패키지에 대한 수요가 큰 것은 분명합니다.
그composer/installers
정의된 프레임워크 및 CMS에서만 작동하고 일반 작곡가 패키지에서는 작동하지 않습니다.
사용자(사용자 정의) 정의 폴더에 패키지를 설치하기 위해 이 Composer 플러그인을 구현했습니다. 단지 Composer.json에 포함하면 됩니다. 예를 따르고 더 궁금한 점이 있으면 말해주세요 :)
https://github.com/mnsami/composer-custom-directory-installer
composer-custom-directory-
기본 Composer 기본 설치 경로 외부에 있는 사용자 지정 디렉토리에 서로 다른 유형의 Composer 패키지를 설치하는 Composer 플러그인vendor
폴더.
이것은 다른 것이 아닙니다.composer-installer
composer가 아닌 패키지 유형을 지원하기 위한 라이브러리.application
..기타.이는 벤더 폴더 외부에 Composer 패키지를 설치할 수 있는 유연성을 추가하기 위함입니다.이 패키지는 지원만 합니다.composer
패키지 유형,
https://getcomposer.org/doc/04-schema.md#type
패키지의 유형입니다.기본값은 라이브러리입니다.
패키지 유형은 사용자 지정 설치 로직에 사용됩니다.특별한 논리가 필요한 패키지가 있으면 사용자 정의 유형을 정의할 수 있습니다.이것은 기호 묶음, 워드 프레스 플러그인 또는 타이포3 모듈일 수 있습니다.이러한 유형은 모두 특정 프로젝트에만 해당되며 해당 유형의 패키지를 설치할 수 있는 설치 관리자를 제공해야 합니다.
사용방법
- Composer 플러그인을 사용자의
composer.json
require
섹션::
"require":{
"php": ">=5.3",
"mnsami/composer-custom-directory-installer": "1.1.*",
"monolog/monolog": "*"
}
- 에서
extra
섹션에서는 다음에 설치할 패키지의 사용자 지정 디렉토리를 정의합니다.
"extra":{
"installer-paths":{
"./monolog/": ["monolog/monolog"]
}
을 추가하여installer-paths
파트, 당신은 작곡가에게 설치하라고 말하고 있습니다.monolog
패키지 안에 있는monolog
폴더를 루트 디렉터리에 저장합니다.
- 새로운 기능을 추가하여 다운로드 디렉토리를 다음과 같이 보다 유연하게 정의할 수 있게 되었습니다.
composer/installers
, , 와 할 수 .{$vendor}
그리고.{$name}
n에installer-path
섹션:
"extra": {
"installer-paths": {
"./customlibs/{$vendor}/db/{$name}": ["doctrine/orm"]
}
}
에서 할 수 .doctrine/orm
를 프로젝트의 지 에,customlibs
.
메모
type: project
관리자에서는 패키지로 .project
입니다와 같은 과 함께 입니다.symfony/framework-standard-edition
패키지,됩니다에 됩니다.
언급URL : https://stackoverflow.com/questions/22696831/composer-install-path-for-custom-package
'programing' 카테고리의 다른 글
mysql 데이터베이스에 몇 개의 테이블을 만들 수 있습니까? (0) | 2023.10.05 |
---|---|
Python에서 빠른 푸리에 변환 플롯팅 (0) | 2023.10.05 |
Spark SQL: 열 목록에 Aggregate 함수 적용 (0) | 2023.10.05 |
아이폰 개발에서 PNG나 JPG를 언제 사용할 것인가요? (0) | 2023.10.05 |
코드를 정리하는 가장 좋은 명령줄 도구는 무엇입니까? (0) | 2023.10.05 |