에 내 스크립트가 실행되는 페이지를 결정하는 방법 스크립트 태그 (shopify API를 통해)를 만듭니다. 나는 제품보기 페이지에서이 스크립트를 실행하는 데에만 관심이 있습니다. 스크립트가 제품보기 페이지에서 실행되는지 여부를 확인할 수있는 확실한 방법은 무엇입니까? 가맹점에 액체 파일에 수동으로 무언가를 넣어달라고 부탁해야합니까?내 앱이 설치 될 때
답변
이 당신의 자바 스크립트로 작동한다 :
// If we are on a product page
if (window.location.pathname.indexOf('/products/') !== -1) {
// What's the product handle?
var productHandle = pathname.match(/\/products\/([a-z0-9\-]+)/)[1];
}
함수가 호출 된 위치를 지정하는 추가 함수 매개 변수를 전달할 수 있습니다. 나는 큰 성공을 거둔 몇몇 프로젝트에서 이런 종류의 프로그래밍을 사용했다. 당신이 제품 뷰 페이지의 함수 호출에서 호출자의 변수를 지정할 수 있습니다
function foo(data, moarData, caller) {
if(caller != 'productPage') { return false; }
...
}
그리고 : : 예를 들어
var page = 'productPage';
foo('sharks', 'games', this.page);
감사합니다. 나는 내가 이해하고 있는지 확신하지 못한다. 스크립트 태그를 만들 때 상점에서 페이지를 렌더링 할 때 호출 할 URL을 지정합니다. URL 매개 변수를 제어 할 권한이 없습니다. 분명히 해줄 수 있니? – akonsu
아, 이제 무슨 뜻인지 알 겠어. 그러나 그렇습니다. 당신은 이것에 대한 통제권을 가지고 있습니다. 다음 . 함수가 FROM이라고하는 곳을 제어 할 수 있다면 추가 값을 확실히 보낼 수 있습니다. – L0j1k
스크립트 태그를 설치하면 내 URL이 상점의 모든 페이지에서 호출됩니다. URL에 전달하는 유일한 매개 변수는 상점 이름입니다. 네가 전화를 걸려면 상점 주인에게이 스크립트를 페이지에 입력하도록 요청해야한다고 제안하십시오. 즉, 소유자는 상품보기를 위해 상점의 템플리트 파일을 수정해야합니다. 나는 이것을 피하려고 노력하고있다. DOM을 검사하여 내가 어느 페이지에 있는지 확인할 수 있기를 원합니다. 가능하다면. – akonsu
Shopify의 제품 페이지는 항상에 제품을 추가 그것에 형태를 갖는다 당신이 뭔가를 할 수 있도록 카트 (jQuery를 사용할 수있는 가정) :
jQuery("form[action='/cart/add']").each(function() {
console.log("I'm in ur product page");
});
브라우저에서 현재 URL을 조회 할 몇 가지 일반적인 자바 스크립트를 작성합니다. 페이지, 제품 또는 컬렉션에 있는지 쉽게 알 수 있습니다. 간단한 RegExp를 사용해보십시오. Shopify가 호스팅 된 이후로 상점이 URL 구조를 엉망으로 만드는 것은 꽤 어려울 것입니다.
좋은 제안입니다. 감사합니다. 상점에서 맞춤 도메인을 사용하는 경우에도 URL 경로가 동일하게 유지된다는 의미입니까? 또한 현재 페이지에 표시된 제품의 ID를 알아야합니다. 어떻게 그걸 가져올거야? – akonsu
동일한 기술을 사용하면 URL에서 제품 핸들을 구문 분석 할 수 있습니다. 이것을 사용하면 코드가 Ajax API를 사용하여 제품을 요청할 수 있으며 이는 ID를 제공합니다. 다시 한번 말하지만, 일반적인 자바 스크립트로는 완전히 가능하지만, clunky도 가능합니다. 이미 서버에 제품을 요청할 필요가 없기 때문에 이미 플래터에 넘겨 줘야합니다. 불행하게도, ID를 얻는 것은 스크립트가 Liquid를 사용하여 제품의 JSON을 추출하지 않는 한 간단하지 않습니다. 아마도 여러분은 여러분이 삽입 한 스크립트에서 그렇게 할 수있을 것입니다. var product = {{product | json}}; var id = product.id –
- 1. 앱이 설치 될 때 초기 SQLite 데이터베이스 만들기
- 2. iOS 앱이 비정상적으로 업그레이드 될 때
- 3. 앱이 업데이트 될 때 WP7 절연 저장소
- 4. 앱이 표시 될 때 호출되는 함수는 무엇입니까?
- 5. 앱이 종료 될 때 마지막으로 본 UIViewController로드하기
- 6. 앱이 파괴 될 때 커스텀 코드 실행
- 7. 앱이 활성화 될 때마다보기로드
- 8. 응용 프로그램이 설치 될 때 트리거가 필요합니다.
- 9. 응용 프로그램이 설치 될 때 디렉토리를 만드시겠습니까?
- 10. json은 내 페이지가로드 될 때
- 11. 배경에서 복귀 할 때 앱이 새로 고침 될 때 제어하기
- 12. CAB가 CE6에서 설치 될 때 설치 DLL이 실행되지 않습니다.
- 13. 내 아이폰 앱이 3G 용으로 디자인 되었다면 내 아이폰 앱이 다시 배포 될 수있다.
- 14. 앱이 종료 될 때 Android가 BroadcastReceiver를 사용 중지합니다.
- 15. 앱이 활성화 될 때 아이폰 용 로그인 화면 표시
- 16. 앱이 업데이트 될 때 이전 데이터베이스를 교체하지 마십시오.
- 17. 앱이 종료 될 때 앱의 상태를 저장하는 방법은 무엇입니까?
- 18. Google Play 앱에서 내 애플리케이션을 열면 종료 될 때 종료됩니다.
- 19. 일부 모델에서만 내 WP7 앱이 중단 될 수 있습니다.
- 20. tableviewcell이 강조 표시되지 않으면 내 앱이 거부 될 수 있습니까?
- 21. 앱이 처음으로로드 될 때 동영상을 표시하는 방법은 무엇입니까?
- 22. 앱이 iPhone SDK에로드 될 때 일련의 이미지를 표시하는 방법은 무엇입니까?
- 23. 아이폰 앱이 업데이트 될 때 데이터를 유지 (Monotouch)
- 24. iOS MPMoviePlayerViewController - 앱이 백그라운드로 전송 될 때 해고하는 방법은 무엇입니까?
- 25. Silverlight 앱이 최소화 될 때 스크롤 막대가 나타나지 않습니다.
- 26. openFileOutput 메서드로 만든 파일은 앱이 업데이트 될 때 제거됩니다.
- 27. ios - InApp 메일 명령이 호출 될 때 앱이 충돌합니다.
- 28. 앱이 위젯으로 배송 될 때 캐싱하는 자산을 처리하는 방법은 무엇입니까?
- 29. 앱이 백그라운드 상태로 전환 될 때 AVExportSession을 취소하는 방법은 무엇입니까?
- 30. 내 앱으로 파일을 여는 방법은 무엇입니까? (내 앱이 배경에있을 때)
이 특정 질문 : - 상인에게 액체 파일에 수동으로 무언가를 넣어달라고 요청해야합니까? 내 대답 : - 제발, 나는 너에게 간청한다. 가능한 한 많이 제거하고 나중에 제거 할 수없는 테마의 파일에는 아무 것도 추가하지 말고 고객에게 자신의 테마를 편집하도록 요청하지 않습니다. –