Shopify වෙළඳසැල සඳහා සම්පූර්ණයෙන්ම ස්වයංක්රීය වැඩපිළිවෙළ ඉංජිනේරු කිරීම Shopify වෙළඳසැල සඳහා සම්පූර්ණයෙන්ම ස්වයංක්රීය වැඩපිළිවෙළ ඉංජිනේරු කිරීම සාර්ථක e-commerce වෙළඳසැල් තබා ගැනීම එහි අභියෝගවලට සාධාරණ කොටසක් සමග පැමිණෙනු ඇත. එය සෑම විටම වෙනස් වන විස්තර, පාරිභෝගික අත්දැකීම් සහ වේදිකාව යාවත්කාලීන කිරීම සඳහා නිශ්චිත අවධානය අවශ්ය වේ. ඒ නිසාම ස්වයංක්රියාකාරීත්වය ක්රියා කරයි – පහසුකම් පමණක් නොව, ඔබේ වෙළඳසැල ක්රියාත්මකව හා ප්රමාණවත්ව ක්රියාත්මක කිරීම සඳහා අවශ් යතාවයක් ලෙස.Shopify යෙදුම් හා drag-and-drop පරිගණකයේ ධනවත් පරිසරයක් ලබා දෙන අතර, එය බොහෝ විට පහසුකම් සඳහා විවෘතත්වය හා පාලනය වෙළඳාම් කිරීමට අවශ්ය වේ. පාලනය ආපසු ගන්න කම්මැලි දේවල් ගැන රොබෝව බය කරන්න! කම්මැලි දේවල් ගැන රොබෝව බය කරන්න! උදාහරණයක් ලෙස, ඔබ ඉක්මනින් හෝ පරක්කු වේලාවක, ඔබ අමුත්තන් යෙදුම් සහ මැනවිලි වැඩපිළිවෙළ සමඟ සීමා හා විකල්ප සොයන්න පටන් ගනු ඇත. එවැනි විකල්පයක් වන්නේ GUI මධ්යම මෙවලම් සිට සම්පූර්ණ මෘදුකාංගය සහ පාලනය ලබා දීම සඳහා වැඩසටහන් කළ හැකි පයිප්ලයින් වෙත ගමන් කිරීමයි. ඔබේ දත්ත සම්පූර්ණ අයිතිවාසිකම් ඔබගේ වෙළඳ නාමය සහ නිෂ්පාදන වලට ගැලපෙන වැඩි දියුණු කිරීම් Shareable Workflows: multiple stores could use the same workflow with little to no tweaks (නිර්මානුකූලව බෙදාහැරෙන රැකියාව ක්රියාත්මක කිරීම) ක් රියාවලියේ සෑම පියවරකම විශ්වාසය දැන්, අප ඉහත සඳහන් ප්රශ්න අවම කිරීමට උදව් කිරීමට ස්වයංක්රීය CI pipeline ගොඩනඟා ගත හැකි ආකාරය පරීක්ෂා කරමු. ව්යාපෘති සාක්ෂි සාක්ෂි ලෙස, අපි අපගේ නිෂ්පාදන අන්තර්ගත වැඩ ක්රියාවලිය සංකීර්ණ කිරීම සඳහා pipeline නිර්මාණය කරමු. ස්ටැක් මෙන්න මේ workflow වලට බලපාන දේ: Shopify - අපගේ නිෂ්පාදන ජීවත් වන තැන GitHub ක්රියාකාරකම් - ඇසුරුම් කිරීම සහ වාහන සඳහා ShopCTL — Shopify වෙළඳසැල කළමනාකරණය සඳහා මෙහෙයුම් රේඛාව ආකෘතිය OpenAI API – නිෂ්පාදන මාතෘකාව වෙනස් කිරීම, SEO අන්තර්ගතය නිර්මාණය කිරීම සහ යෝජනා ලබා ගැනීම Python සහ සමහර Bash ස්ක් රිප්ටර - ධනවත් කිරීමේ ලෝහය සහ යාවත්කාලීන කිරීම සඳහා Shopify එක GitHub ක්රියාකාරකම් කඩේ විවෘත API Python එක Bash පළමුවැනි දේ පළමුවැනි දේ - Stack Up GitHub Actions workflow එකෙන් පටන් ගමු.We will store pipeline configs in the GitHub Actions workflow.We will store pipeline configs in the ෆයිල් එකක් නිර්මාණය කරන්න මෙම ගොනුව අපේ නිෂ්පාදන අන්තර්ගතය රැකියාව ක්රියාත්මක කරයි.This file will define jobs for our product content workflow. .github/workflows/ enrich-products.yml # .github/workflows/enrich-products.yml name: Shopify Product Enrichment on: workflow_dispatch: ඒ GitHub මෙහෙයුම් වල සිදුවීම් ඔබට GitHub පරිශීලකයෙන් හෝ API හරහා රැකියාව ක්රියාත්මක කිරීමට ඉඩ සලසයි. නිශ්චිත වේලාවට workflow_dispatch එය ස්වයංක්රීයව ක්රියාත්මක කිරීමට සැලසුම් කරන්න එය ස්වයංක්රීයව ක්රියාත්මක කිරීමට සැලසුම් කරන්න API Keys ගිනි යතුරු අපගේ සැකසුම් සම්පූර්ණ කිරීම සඳහා අපගේ API යතුරු කිහිපයක් අවශ්ය වනු ඇත: AI මෙහෙයුම් සහ අපගේ වෙළඳසැල සමඟ සන්නිවේදනය කිරීම. OPENAI_API_KEY SHOPIFY_ACCESS_TOKEN OpenAI API Key ලබා ගන්න එය ස්ථාපනය Shopify ප්රවේශ ටෝකන් ලබා ගැනීම අපහසු වන අතර, ඔබට එය කිරීමට Dummy යෙදුම නිර්මාණය කළ යුතුය. එකක් ගන්න , ඔබේ OpenAI ගිණුම as a secret in GitHub මේ Official Guide එක ඔබේ OpenAI ගිණුම GitHub හි රහස් ලෙස මේ Official Guide එක ShopCTL කඩේ අපි පාවිච්චි කරන්නෙ A අපගේ නිෂ්පාදන ප්රවාහන හා යාවත්කාලීන කිරීම සඳහා. අපි අපගේ pipeline හි ප්රවේශ සඳහා නැවත භාවිතා කළ හැකි පෞද්ගලික ක්රියාවලිය නිර්මාණය කරමු. ක්රියා ලිපිනය ඇතුළත සහ ඊළඟ config එකතු කරන්න. Command Line උපකරණ setup-shopctl.yml Command Line උපකරණ # .github/workflows/actions/setup-shopctl.yml name: Setup ShopCTL description: Installs Go and ShopCTL CLI runs: using: "composite" steps: - name: Set up Go uses: actions/setup-go@v5 with: go-version: "1.24" - name: Install ShopCTL shell: bash run: | sudo apt-get update sudo apt-get install -y libx11-dev go install github.com/ankitpokhrel/shopctl/cmd/shopctl@main echo "$HOME/go/bin" >> "$GITHUB_PATH" Custom actions වලට අමතරව, we need to add a configuration for the store we are operating.අපි ක්රියා කරන වෙළඳසැල සඳහා සැකසුම් එකතු කරන්න. repo හි root එක මත සහ ඊළඟ config එක අමතන්න සෑම සිදුවීමකටම මාරු කිරීම ඔබේ වෙළඳසැල Alias shopctl .shopconfig.yml store1 # shopctl/.shopcofig.yml ver: v0 contexts: - alias: store1 store: store1.myshopify.com currentContext: store1 pipeline අවසන් කිරීම Pipeline සඳහා සම්පූර්ණ මූලාශ්රය මෙතැනින් සොයා ගත හැකිය. Pipeline සඳහා සම්පූර්ණ මූලාශ්රය මෙතැනින් සොයා ගත හැකිය. මෙතන මෙතන අපගේ තෙල් පද්ධතිය 4 පියවර ඇත, viz: Export -> Enrich -> Update -> Notify Stage 1: Export Products පියවර 1: ආනයන නිෂ්පාදන අපගේ pipeline හි පළමු පියවර වන්නේ අපගේ වෙළඳසැලෙන් නවතම නිෂ්පාදන ප්රවාහන කිරීමයි. ඒ අතරේ කලින් හදපු ෆයිල් එක. export-products enrich-products.yml jobs: export-products: runs-on: ubuntu-latest env: SHOPIFY_ACCESS_TOKEN: ${{ secrets.SHOPIFY_ACCESS_TOKEN }} # The secret we set earlier SHOPIFY_CONFIG_HOME: ${{ github.workspace }} # This will tell shopctl to use current dir to look for .shopconfig outputs: has-data: ${{ steps.check.outputs.has_data }} steps: - name: Checkout repo uses: actions/checkout@v3 - name: Setup ShopCTL uses: ./.github/workflows/actions/setup-shopctl - name: Export products run: | mkdir -p data # Export latest data (last 7 days) using the shopctl tool as latest_products.tar.gz shopctl export -r product="created_at:>=$(date -v -7d +%Y-%m-%d)" -o data/ -n latest_products -vvv - name: Check if export has data id: check run: | if [ -s data/latest_products.tar.gz ]; then echo "has_data=true" >> "$GITHUB_OUTPUT" else echo "has_data=false" >> "$GITHUB_OUTPUT" echo "No products found to process" fi - name: Upload exported products if: steps.check.outputs.has_data == 'true' uses: actions/upload-artifact@v4 with: name: exported-products path: data/latest_products.tar.gz ඉහත වැඩපිළිවෙළ ඉදිකරනු ඇත එය පසුගිය 7 දින තුළ නිර්මාණය කරන ලද සියලුම නිෂ්පාදන ප්රවාහන කරනු ඇත සහ නව නිෂ්පාදන තිබේ නම් ඒවා ප්රකාශයන් ලෙස උඩුගත කරනු ඇත. කඩේ කඩේ Stage 2a: Review Catalog පියවර 2a: සමාලෝචන ලැයිස්තුව ඊළඟ දේ අපි කිරීමට අවශ්ය වන්නේ අපගේ ලියාපදිංචිය පරීක්ෂා කිරීමයි.We will use the OpenAI API to review product data samples and identify the following: ටැග, නිෂ්පාදන වර්ග, හෝ විකල්පවල ගැටළු හෝ අසාර්ථකතා අතුරුදහන් හෝ අසාමාන්ය inventory information නිෂ්පාදන සැකසීම හෝ විකල්ප ව්යුහය තුළ දෝෂ සමාන හෝ අතිශයින් සමාන නිෂ්පාදන ලැයිස්තුවේ ගුණාත්මකභාවය සහ සම්පූර්ණත්වය වැඩි දියුණු කිරීම සඳහා පොදු නිර්දේශ review-catalog: needs: export-products runs-on: ubuntu-latest env: OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} steps: - name: Checkout repo uses: actions/checkout@v3 - name: Download product export uses: actions/download-artifact@v4 with: name: exported-products path: data/ - name: Set up Python uses: actions/setup-python@v5 with: python-version: "3.13" - name: Install dependencies run: pip install openai - name: Run catalog review script run: | # Assuming your script is saved in scripts/review_catalog.py python scripts/review_catalog.py \ data/latest_products.tar.gz \ data/review_summary.md - name: Upload catalog summary uses: actions/upload-artifact@v4 with: name: catalog-review-summary path: data/review_summary.md - name: Final summary run: echo "✅ Shopify product catalog review completed!" සටහන් කරන්න The section.We want to run it after products are exported and made available as artifacts.We also need to set up Python, as our review script is written in Python.You can use any language of your choice here.The script generates ඊළඟ පියවරේ ආදර්ශයක් ලෙස උඩුගත කරනු ලැබේ (උදාහරණයක් පහත). needs review_summary.md ## Identified Issues ### 1. Missing or Inconsistent Information: - Some products have missing or inconsistent `productType` (e.g. `"gid://shopify/Product/8790718087392"`, `"gid://shopify/Product/879071795632 උදාහරණයක් script සහ prompt විය හැක . මෙතැනදී සොයා මෙතැනදී සොයා Stage 2b: Enrich Products පියවර 2b: Enrich Products සමාන වන්නේ රැකියාවක් - Add an එය නිෂ්පාදන මාතෘකාව සමාලෝචනය කිරීම සඳහා ස්ක්රිප්ට් ක්රියාත්මක කරනු ඇත සහ OpenAI භාවිතා කරන නිෂ්පාදන සඳහා SEO මාතෘකාව සහ විස්තරයක් නිර්මාණය කරනු ඇත. review-catalog enrich-products රැකියාව රැකියාව උදාහරණයක් script සහ prompt විය හැක . මෙතැනදී සොයා මෙතැනදී සොයා Stage 3: Update Products පියවර 3: නිෂ්පාදන යාවත්කාලීන කිරීම පියවර 2b දී මෙටා දත්ත නිෂ්පාදනය කරන විට, අපි භාවිතා කරන නිෂ්පාදන යාවත්කාලීන කළ හැකිය. මේ මොහොතේ අපි Python වෙනුවට Bash script එකක් භාවිතා කරන්නෙමු. කඩේ කඩේ නමැති රැකියාවක් Add a job called පහත දැක්වෙන පරිදි update-products update-products: needs: enrich-products runs-on: ubuntu-latest env: SHOPIFY_ACCESS_TOKEN: ${{ secrets.SHOPIFY_ACCESS_TOKEN }} SHOPIFY_CONFIG_HOME: ${{ github.workspace }} steps: - name: Checkout repo uses: actions/checkout@v3 - name: Setup ShopCTL uses: ./.github/workflows/actions/setup-shopctl - name: Download enriched products uses: actions/download-artifact@v4 with: name: enriched-products path: data/ - name: Apply updates using shopctl run: | mkdir -p logs touch logs/audit.txt while IFS=, read -r pid new_title seo_title seo_desc; do # Strip leading/trailing quotes seo_desc="${seo_desc%\"}" seo_desc="${seo_desc#\"}" # Use shopctl to update product details if output=$(shopctl product update "$pid" \ --title "$new_title" \ --seo-title "$seo_title" \ --seo-desc "$seo_desc" 2>&1); then echo "$pid,success" >> logs/audit.txt else sanitized_error=$(echo "$output" | tr '\n' ' ' | sed 's/,/ /g') echo "$pid,failure,$sanitized_error" >> logs/audit.txt fi done < <(tail -n +2 data/enriched_products.csv) - name: Upload audit log uses: actions/upload-artifact@v4 with: name: product-audit-log path: logs/audit.txt - name: Final summary run: echo "✅ Shopify product enrichment and updates completed!" මෙම කාර්යය සාපේක්ෂව සරල ය; එය පෙර පියවර තුළ නිර්මාණය කරන ලද CSV ගොනුවෙන් කියවීම සඳහා bash script භාවිතා කරයි, ShopCTL භාවිතා කරමින් නිෂ්පාදන යාවත්කාලීන කිරීම සහ ලැයිස්තුව ගොනුවක් නිර්මාණය කිරීම. Stage 4: Notify පියවර 4: දැනුම් දීම දැන් ඉතිරි එකම දෙය වන්නේ රැකියා සම්පූර්ණ වී ඇති බව (හෝ අසාර්ථක වී ඇති බව) සහ වෙනස් වී ඇති දේ ගැන උනන්දුවන්ට දැනුම් දීමයි.ඔබට Slack දැනුම් දීම හෝ විස්තර ඊ-තැපැල් යැවිය හැකිය. notify: needs: [review-catalog, update-products] runs-on: ubuntu-latest steps: - name: Download audit log uses: actions/download-artifact@v4 with: name: product-audit-log path: logs/ - name: Download catalog review uses: actions/download-artifact@v4 with: name: catalog-review-summary path: data/ - name: Print audit summary run: | ls -lah logs/ ls -lah data/ echo "🧾 Shopify Product Update Audit" echo "-------------------------------" total=$(wc -l < logs/audit.txt) updated=$(grep -c ',success' logs/audit.txt || true) failed=$(grep -c ',failure' logs/audit.txt || true) echo "✅ Success: $updated" echo "❌ Failed: $failed" echo "📦 Total Processed: $total" echo "" echo "📋 Detailed Audit:" cat logs/audit.txt - name: Print catalog review summary run: | echo "" echo "🧠 Catalog Review Summary" echo "-------------------------" cat data/review_summary.md ඔක්කොම එකට දාන්න ඉහත උදාහරණය ඔබට ලබා ගත හැකි මෙවලම් භාවිතා කළ හැකි ආකාරය ඔබගේ භාවිතය සඳහා අනුකූලව සුවිශේෂී හා බලවත් දෙයක් නිර්මාණය කිරීම සඳහා ඔබට පෙන්වනු ලැබේ, අමුත්තන් යෙදුම් වලට සංවේදී ගබඩා දත්ත අතපසු කිරීමකින් තොරව. අපගේ ව්යාපෘති සාක්ෂි සාක්ෂි නිෂ්පාදන මට්ටමේ ප්රධාන කරුණු කිහිපයක් අතහැර දමන්නේ කෙසේද - අත්හදා බැලීම් සහ නිවැරදි වැරදි කළමනාකරණය සඳහා වේදිකාවක් භාවිතා කිරීම වැනි - එය ඔබට ආරම්භ කිරීමට ආකාරය පිළිබඳ පොදු අදහසක් ලබා දෙයි. ගන්නවා මෙම මට්ටමේ මෘදුකාංගය සහ පාලනය සීමිත හැකියාවන් විවෘත කරයි - නිෂ්පාදන පිටපත් මත ස්වයංක්රීය A / B පරීක්ෂණ, භාෂා ගණනාවක් පුළුල් කිරීම වැඩපිළිවෙළ, දෛනික මිල ගණන් අත්හදා බැලීම්, සහ ස්වයංක්රීය සම්පත් පිරිසිදු කිරීම, පෞද්ගලික නිර්දේශ හා ඊට වඩා. ඔබ පාලනය කරන සෑම පියවරක්ම සමඟ, ඔබ නව අදහස් අත්හදා බැලීමට, වෙළෙඳපොළ වෙනස්වීම් සඳහා වේගයෙන් අනුකූල විය හැකි අතර, ඔබේ ව්යාපාරය වර්ධනය වන විට ක්රියාකාරකම් පහසුවෙන් පුළුල් කළ හැකිය.