UNPKG

@ai-growth/n8n-nodes-wordpress

Version:

n8n node for WordPress integration with AI GROWTH - SEO WP plugin

83 lines (82 loc) 3.01 kB
import { WordPressClient } from '../utils/WordPressClient'; import { IImageMetadata, IWordPressImage } from '../interfaces/WordPressInterfaces'; import { IMediaUploadOptions } from './MediaUploadService'; /** * Opções para definir a imagem destacada */ export interface ISetFeaturedImageOptions { /** * Metadados da imagem */ metadata?: IImageMetadata; /** * Opções para upload da imagem */ uploadOptions?: IMediaUploadOptions; } /** * Tipo de conteúdo WordPress */ export type WordPressContentType = 'post' | 'page' | 'product'; /** * Serviço para gerenciar imagens destacadas e metadados de imagens */ export declare class FeaturedImageService { private client; private mediaService; /** * Construtor do serviço * @param client Cliente WordPress */ constructor(client: WordPressClient); /** * Define a imagem destacada para um conteúdo a partir de uma URL de imagem * @param contentId ID do conteúdo (post, página, etc.) * @param contentType Tipo de conteúdo * @param imageUrl URL da imagem * @param options Opções adicionais * @returns Conteúdo atualizado */ setFeaturedImageFromUrl(contentId: number, contentType: WordPressContentType, imageUrl: string, options?: ISetFeaturedImageOptions): Promise<any>; /** * Define a imagem destacada para um conteúdo a partir de um ID de mídia existente * @param contentId ID do conteúdo (post, página, etc.) * @param contentType Tipo de conteúdo * @param mediaId ID da mídia na biblioteca do WordPress * @returns Conteúdo atualizado */ setFeaturedImage(contentId: number, contentType: WordPressContentType, mediaId: number): Promise<any>; /** * Remove a imagem destacada de um conteúdo * @param contentId ID do conteúdo (post, página, etc.) * @param contentType Tipo de conteúdo * @returns Conteúdo atualizado */ removeFeaturedImage(contentId: number, contentType: WordPressContentType): Promise<any>; /** * Obtém a imagem destacada de um conteúdo * @param contentId ID do conteúdo (post, página, etc.) * @param contentType Tipo de conteúdo * @returns Imagem destacada ou null se não houver */ getFeaturedImage(contentId: number, contentType: WordPressContentType): Promise<IWordPressImage | null>; /** * Verifica se um conteúdo existe * @param contentId ID do conteúdo * @param contentType Tipo de conteúdo * @returns Conteúdo se existir */ private checkContentExists; /** * Obtém o endpoint da API para o tipo de conteúdo * @param contentType Tipo de conteúdo * @returns Endpoint da API */ private getEndpointForContentType; /** * Capitaliza a primeira letra do tipo de conteúdo * @param contentType Tipo de conteúdo * @returns Tipo de conteúdo com primeira letra maiúscula */ private capitalizeContentType; }